Лучший способ создания объектов JavaScript
Все, что я видел, создавая объекты, как показано ниже, что это за тип создания объекта на самом деле?
var myApp = myApp || {};
Я создаю такой объект
var myApp={property:"value",method:function(){}};
Кто-нибудь может сказать, пожалуйста, разницу между обоими типами.
2 ответа
Первый пример не заменит переменную myApp
если он уже существует и полезен для работы в незнакомых пространствах имен или при работе с глобальными переменными. Вам нужно будет указать myApp
свойства после создания.
Второй пример всегда будет создавать новую версию myApp
и позволяет указать его свойства при создании. Это переопределит любые другие переменные, уже названные myApp
,
Оба примера создают один и тот же "тип" объекта - фактически существует только один тип объекта. Что отличает объекты друг от друга, так это свойства, которыми они обладают.
Первый пример присваивает значение себе, если оно уже имеет истинное значение, и объект без свойств в противном случае.
Второй пример присваивает объект со свойствами.