Нет, он запустит все 10. Он запустит первые два (асинхронно), затем единственный поток Javascript вернется из первого вызова и войдет во второй, вызовет еще два и т. Д. До тех пор, пока не будут вызваны все 10.Пример:
var i = 0;
function foobar(){
// Execute functions asynchronously by using setTimeout
setTimeout(function(){ alert(++i); }, 0);
setTimeout(function(){ alert(--i); }, 0);
}
foobar();
foobar();
foobar();
foobar();
foobar();
alert('This will ALWAYS alert first');
Последнее предупреждение всегда будет первым, поскольку Javascript является однопоточным, после чего другие предупреждения будут появляться в любом порядке в зависимости от расписания.Вы можете увидеть любое число в диапазоне от -5 до 5, но последнее предупреждение всегда будет 0.
http://jsfiddle.net/Paulpro/uJd44/