dimagolov
могу повториться, что все манипуляции циклом - вопрос вкуса и привычки, не стоит наверное на этом зацикливаться? setTimeout и setInterval вместе везде описаны именно поэтому
про передачу переменных тут много тонкостей. надо понимать, что передается строкой.
в случае setTimeout("myFuncs(myVar)",1000); будет передано имя переменной, а при setTimeout("myFuncs("+myVar+")",1000); будет передано ее значение
замыкания использую по необходимости, штука удобная, но тут они причем?
вместо
setTimeout("myFunc(myVar)",1000);
использовать
setTimeout("function(inVar){return myFunc(inVar)}(myVar)",1000);
??
если переменную надо передать, ее передают по имени (если в нужно время она гарантированно доступна и содержит что надо), либо по значению
п.с. про остановку цикла - память у меня вообще-то хорошая, спасибо :р
п.п.с. соискателям в помощь:
http://javascript.ru/tutorial/basic/closure