0 == '0'
and 0 == ''
BUT '' != '0'
for (var i = 0; i < 20; i++) { var rand = Math.random()*1000; var duration = parseInt(rand); setTimeout(function logTheCrazyVar() { console.log(i); }, duration); }
for (var i = 0; i < 10; i++) { var duration = parseInt(Math.random()*1000); setTimeout(function () { i -= parseInt(Math.random()*10); }, duration); } console.log('i:', i, 'duration:', duration);