В веб-браузере, таком как Chrome, объявление переменной
i
за пределами области действия любой функции делает ее глобальной и, следовательно, связывает ее как свойство
window
объект. В результате запуск этого кода в веб-браузере требует неоднократного разрешения свойства
i
within the heavily populated
window
namespace in each iteration of the
for
loop.
Однако в Node.js объявление любой переменной вне области действия любой функции привязывает ее только к собственной области действия модуля (а не к области видимости).
window
object) which therefore makes it much easier and faster to resolve.
Итог
Key takeaway for interview: Consider following code snippet