Как создать объект в JavaScript?

С конструктором

Рассмотрим транспортное средство, у него есть номер, и оно заводится, ускоряется и останавливается.

  1. Давайте определим функцию с именем Автомобиль.

Здесь мы можем наблюдать, что функция имеет некоторые свойства (ДА! функция является объектом).

Среди них нас интересует свойство prototype. Который указывает на объект, имеющий свойство с именем constructor, и его __proto__ является объектом.

Таким образом, этот прототип действует как определение нашего класса.

Давайте определим поведение для нашего автомобиля.

Здесь мы определили поведение под названием start в нашем прототипе автомобиля. Давайте проверим текущий статус нашего прототипа.

Здесь мы видим, что функция запуска добавлена ​​в наш прототип.

Давайте определим остальные свойства и поведение автомобиля.

Используя ключевое слово new, мы можем вызвать (конструктор) функцию Vehicle для создания объекта.

Мы должны заметить одну вещь: свойство number появилось дважды. Это связано с тем, что одно из свойств number взято из нашего прототипа Vehicle, а другое мы инициализировали в объекте.

Когда мы пытаемся получить доступ к какому-либо свойству объекта в JS, он сначала проверяет текущий объект, если он не найден, а затем проверяет цепочку прототипов объектов. Вот почему мы можем вызвать start .

Теперь у нас есть готовый прототип Автомобиля. Мы можем создать столько объектов, сколько захотим, из этой функции-конструктора.