var funcs = [];
for ( i = 0; i<10; i++ ) {
var ololo = i;
funcs[i] = function(){ alert( ololo ) };
}
funcs[0] () // 0??? нет 9!! откуда 9 ??
funcs[4] () // 4??? нет!! 9, а должно 4
Вообще это общеизвестная проблема, но нубы не часто с ней сталкивались по этому не особо втулили что от них требвовалось)
var funcs = [];
for ( i = 0; i<10; i++ ) try{throw 0} catch( ololo ) {
ololo = i;
funcs[i] = function(){ alert( ololo ) };
}
funcs[0] () // 0 ОПА
funcs[4] () // 4 ОПА