Способи створення об’єктів у JavaScript
Існує декілька способів створення об’єктів у JavaScript. Тип даних Object відіграє вирішальну роль у JS. Об’єкт — це невпорядкований набір пар ключ-значення. Може містити інші об’єкти.
1. Literal notation
const someObject1 = {};
Мабуть, це найпоширеніший і найпростіший спосіб. Давайте додамо властивості та методи
someObject1.name = "John";
someObject1.age = 25;
someObject1.run = function() {
console.log("run");
}
А тепер те саме, але ми будемо встановлювати властивості та методи при створенні
const someObject1 = {
name: "John",
age: 25,
run: function() {
console.log("run");
}
};
2. Object constructor
Цей спосіб не рекомендується використовувати, а краще скористатися попереднім. Тим не менш, він існує. Але ймовірність зустріти його вкрай мала
const someObject2 = new Object();
Після цього ми також додамо властивості та методи.
someObject2.name = "Nick";
someObject2.age = 30;
someObject2.jump = function() {
console.log("jump");
}
3. Function constructor
Ми можемо написати функцію-конструктор і створити об’єкти за допомогою оператора new
function SomeObject3(name, age) {
this.name = name;
this.age = age;
}
SomeObject3.prototype.run = function() {
console.log("run");
}
Створимо об’єкт
const someObject3 = new SomeObject3("Alex", 20);
4. Object.create() спосіб
Є ще один спосіб створення об’єктів – за допомогою методу Object.create(). Перший параметр, обов’язковий параметр, є прототипом створеного об’єкта, а другий необов’язковий параметр – список властивостей об’єкта. Щоб створити об’єкт без прототипу, необхідно викликати метод Object.create() із параметром null.
const someObject4 = Object.create(Object.prototype);
// the full analogue of Object.create (Object.prototype) is
const otherObject1 = {};
//object without prototype
const otherObject2 = Object.create(null);
5. Використання класів
Синтаксис ES6 забезпечує написання класів у JavaScript. По суті, це аналог третього способу – використання функції конструктора. Тільки з більш простим і зрозумілим написанням.
class SomeObject5 {
constructor(name, age) {
this.name = name;
this.age = age;
}
run() {
console.log("run");
}
}
Давайте тепер створимо об’єкт, точніше екземпляр класу
const someObject5 = new SomeObject5("Alex", 20);
Схожі записи:
-
Ітерація елементів масиву без циклу
Приклади дуже абстрактні, оскільки цикли існують. Наша умова буде такою. Потрібно вибрати всі елементи масиву за заданим атрибутом. Або, якщо сказати точніше, потрібно ві...
-
Перетворення зображення в Base64 за допомогою JavaScript
Перетворення зображення в рядок Base64 у JavaScript може бути надзвичайно корисним у багатьох сучасних сценаріях веб-розробки. Однією з найпоширеніших причин використання...
-
Як визначити операційну систему (ОС) за допомогою JavaScript
Іноді під час створення веб-застосунків або веб-сайтів необхідно визначити операційну систему користувача. Це може бути корисним для застосування різних стилів CSS, збору...
Залишити відповідь