Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг Управление проектами
Бесплатный вебинар
«как найти любимую работу»
Подарки на 150 000 ₽ за участие
Живой эфир
Записи не будет!
07:05:47:06
дн. ч. мин. сек.
02 Ноя 2024
2 мин
560

Что такое ключевое слово ‘new’ в JavaScript

В JavaScript существует ключевое слово new, которое может вызвать затруднения при первом знакомстве. Особенно это касается тех, кто считает, что JavaScript не

В JavaScript существует ключевое слово new, которое может вызвать затруднения при первом знакомстве. Особенно это касается тех, кто считает, что JavaScript не является объектно-ориентированным языком программирования.

Пример проблемы

Допустим, есть функция-конструктор Person, которая представляет собой модель человека.

function Person(name, age) {
    this.name = name;
    this.age = age;
}

Если функция вызывается без new, то this будет ссылаться на глобальный объект (в браузере это window). Это может привести к нежелательным последствиям, таким как переопределение глобальных переменных.

Person('John', 25); // 'this' ссылается на глобальный объект
console.log(window.name); // 'John'
console.log(window.age); // 25

Решение проблемы

Ключевое слово new в JavaScript используется для создания нового экземпляра объекта. В данном случае, new гарантирует, что this внутри функции-конструктора будет ссылаться на новый объект.

var john = new Person('John', 25);
console.log(john.name); // 'John'
console.log(john.age); // 25

Таким образом, ключевое слово new позволяет безопасно создавать новые объекты без риска переопределения глобальных переменных.

Когда использовать ‘new’, а когда нет?

Ключевое слово new должно использоваться при вызове функций-конструкторов — это функции, которые предназначены для создания новых объектов.

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

Заключение

Ключевое слово new в JavaScript является важным инструментом, который позволяет создавать новые объекты. Оно гарантирует, что при создании объекта не будет переопределены глобальные переменные, что делает код более безопасным и предсказуемым.

Проверь как ты усвоил материалы статьи
Пройди тест и узнай насколько ты лучше других читателей

Добавить комментарий