mpak,
 Что ты соорудило, чудо в перьях? Если тебя смущает то, что for in оставляет переменные (а так оно и должно быть, чтобы была возможность восстановить цикл) есть delete
for(i in {a: 1}){}
alert(i)
delete i
alert(window.i)
	
	| Сообщение от mpak | 
	| (function(data, v){for(k in data){ var v = data[k]; console.log("k:", k, "v:", v);
 }})(HH_BLOCKS_SLIDER);
 | 
	
Да ты еще при всех своих беспонтовых извращениях умудрилось в глобал насрать
;(function(data, v){for(k in data){ var v = data[k];
    console.log("k:", k, "v:", v);
}})({a: 1});
console.log(k)
молоко на губах начала высуши, а потом о *более других языках* рассуждай.  Из ынтырпрайзных языков сейчас у JS почти все отсосут, если не считать ruby и тикля, которые, ынтырпрайзом то особо и не назовешь. Выдыхай, епт