- PVSM.RU - https://www.pvsm.ru -

Асинхронный JavaScript (книга)

image
Ответьте на три вопроса по JavaScript. Если какой-то из них вас затруднит, вам следует прочесть отличную бесплатную книгу Тревора Бернхема (Trevor Burnham) — Async JavaScript [1]. Всего 90 страниц, но здесь разобраны такие темы, как событийный цикл JavaScript, синхронность/асинхронность, однопоточность/многопоточность (воркеры), promises, fibers и еще много чего интересного.

Итак, что выдаст следующий код?

for (var i = 1; i <= 3; i++) {
    setTimeout(function(){ console.log(i); }, 0);
};

Ответ

4
4
4


Что выдаст данный код на страничке в браузере (хром, сафари), в node.js?

var obj = {};
console.log(obj);
obj.foo = 'bar';

Ответ

В браузере:

{foo:bar}

В node.js:

{}

Сколько (примерно) раз сработает setInterval(func, 0) за секунду в браузере?

var fireCount = 0;
var start = new Date;
var timer = setInterval(function() {
    if (new Date - start > 1000) { 
        clearInterval(timer);
        console.log(fireCount);
        return;
    }   
    fireCount++;
}, 0);

Ответ

Около 200

Если интересно почему именно так — ответы есть в книге [1].

Автор: zag2art

Источник [2]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/javascript/51831

Ссылки в тексте:

[1] Async JavaScript: http://it-ebooks.info/book/1284/

[2] Источник: http://habrahabr.ru/post/207778/