|
Почему не следует использовать var в global
Наверное, многие думают, что объявленная в global переменная с var отличается от той что без var только тем, что имеет скрытое св-во dontdelete. Я выяснил, что в node, помимо этого, она не копируется в global. Возможно, еще где-нибудь. Это значит, к примеру, что она не будет доступна через конструкцию for(i in global). Поэтому, в общем случае, не стоит объявлять через вар в глобальной области. Объявляя без вар мы ничего не теряем. Но не наоборот. Так что это тупой базворд, не надо слушать этих умников от CS.
|
Стоит различать свойства глобального объекта и глобальные переменные.
Почитай, например http://dmitrysoshnikov.com/ecmascrip...riable-object/ Отличие не только в dontdelete var Object; //глобальная функция alert(typeof Object); //по прежнему доступен var postMessage; //свойство объекта window alert(typeof postMessage) //теперь до postMessage можно достучаться // только с помощью window.postMessage |
В соседней теме на то же тебе же отвечал, процитирую:
Цитата:
|
Цитата:
|
Цитата:
|
Object undefined?
|
Цитата:
Object=1 console.log(typeof Object)// number |
Цитата:
|
Цитата:
var Object=1; console.log(typeof Object)//number так, то что с var, что без, number |
Цитата:
Цитата:
|
Часовой пояс GMT +3, время: 19:51. |
|