Я только начал с JavaScript, и я иду по заявлениям следующего типа довольно часто: var var_name = window.var_name = window.var_name || {};
Может кто-то объяснить, что значение такого заявления ?Javascript: необходимость разъяснение относительно конкретного типа переменной декларации
ответ
Это выражение:
window.var_name || {}
... просто возвращает значение window.var_name
, если это значение не является falsy (false
, 0
, ''
, undefined
, null
, или NaN
), и в этом случае он оценивает пустой объект ({}
). Это используется для предоставления значения по умолчанию, если window.var_name
не существует.
Полученное значение присваивается обратно window.var_name
:
window.var_name = window.var_name || {};
который затем назначается (возможно) новую переменную с именем var_name
:
var var_name = window.var_name = window.var_name || {};
В глобальном масштабе var_name
равно window.var_name
. Внутри функции var_name
будет ссылаться на новую локальную переменную.
var_name
- глобальная переменная сферы, инициализированная в окне браузера var_name
значение. если нет значения, он инициализируется как пустой объект, {}
. просто копию окна var_name для локального использования.
window.var_name || {}
приравнивает к window.var_name
, если он установлен, или пустой объект в противном случае.
Остальные заявления просто devines переменные var_name
и window.var_name
к этому значению
- 1. запрашивающая разъяснение относительно типа отливать
- 2. Разъяснение относительно ParseInt() в Javascript
- 3. Определение переменной Javascript - разъяснение
- 4. разъяснение декларации собственности iOS
- 5. Разъяснение относительно статической переменной поведения в Java
- 6. Sinch разъяснение относительно relayRemotePushNotificationPayload:
- 7. Разъяснение относительно gmtoff
- 8. Разъяснение относительно ActiveX кабины версии
- 9. Разъяснение относительно journal_size_limit в SQLite
- 10. Delphi Проверка значения переменной в декларации типа
- 11. Несоответствие типа декларации типа
- 12. JAVA относительно конкретного метода
- 13. Странный тип переменной декларации
- 14. Использование конкретного класса из абстрактного типа переменной
- 15. Разъяснение относительно C++ Exception Handling/Бросив
- 16. Разъяснение относительно заголовка файла assert.h в C
- 17. Разъяснение относительно содержания в моем андроид приложение
- 18. Разъяснение для включать/требуют относительно вызова скрипта
- 19. Ошибка декларации декларации при определении типа вектора?
- 20. Необходимость обертки экзистенциального типа
- 21. Data.Map декларации типа
- 22. Дженерики декларации типа объяснения
- 23. Уточнение типа декларации
- 24. Anonymous функция декларации типа
- 25. Уточнение типа декларации Isabelle
- 26. Пользовательские декларации возвращаемого типа
- 27. Javascript Class Разъяснение
- 28. разъяснение обратного вызова javascript
- 29. Необходимое фундаментальное разъяснение Javascript
- 30. JavaScript синтаксис разъяснение
Спасибо за объяснение! – AmbujS