В JavaScript объекты представляют собой коллекции пар ключ-значение, где значения могут быть данными (свойствами) или функциями (методами). Объекты имеют фундаментальное значение для JavaScript, поскольку почти все в JavaScript является объектом, включая массивы, функции и даже другие объекты.
Самый простой способ создать объект — использовать фигурные скобки {}.
Пример:
const person = { name: "Alice", age: 25, greet: function () { console.log("Hello!"); }, }; console.log(person.name); // Output: Alice person.greet(); // Output: Hello!
При использовании конструктора Object создается пустой объект.
Пример:
const person = new Object(); person.name = "Bob"; person.age = 30; person.greet = function () { console.log("Hi!"); }; console.log(person.name); // Output: Bob person.greet(); // Output: Hi!
Этот метод создает новый объект с указанным прототипом.
Пример:
const prototype = { greet: function () { console.log("Hello!"); } }; const person = Object.create(prototype); person.name = "Charlie"; console.log(person.name); // Output: Charlie person.greet(); // Output: Hello!
Доступ к свойствам осуществляется с помощью точки (.).
Пример:
console.log(person.name); // Output: Alice
Доступ к свойствам осуществляется с помощью квадратных скобок ([]). Полезно для динамических имен свойств.
Пример:
console.log(person["name"]); // Output: Alice const key = "age"; console.log(person[key]); // Output: 25
person.country = "USA"; console.log(person.country); // Output: USA
person.age = 26; console.log(person.age); // Output: 26
delete person.age; console.log(person.age); // Output: undefined
Когда функция является свойством объекта, она называется методом.
Пример:
const car = { brand: "Tesla", start: function () { console.log("Car started!"); }, }; car.start(); // Output: Car started!
Перебрать все перечислимые свойства объекта.
Пример:
for (let key in person) { console.log(`${key}: ${person[key]}`); }
Возвращает массив ключей объекта.
Пример:
Object.keys(person).forEach((key) => { console.log(`${key}: ${person[key]}`); });
Возвращает массив пар [ключ, значение].
Пример:
Object.entries(person).forEach(([key, value]) => { console.log(`${key}: ${value}`); });
JavaScript предоставляет несколько встроенных методов для работы с объектами.
const target = { a: 1 }; const source = { b: 2 }; Object.assign(target, source); console.log(target); // Output: { a: 1, b: 2 }
const obj = { a: 1 }; Object.freeze(obj); obj.a = 2; // No effect console.log(obj.a); // Output: 1
const obj = { a: 1 }; Object.seal(obj); obj.b = 2; // No effect obj.a = 3; // Works console.log(obj); // Output: { a: 3 }
Объекты в JavaScript имеют прототип — еще один объект, от которого они наследуют свойства и методы.
Пример:
const animal = { eats: true }; const dog = Object.create(animal); dog.barks = true; console.log(dog.eats); // Output: true (inherited) console.log(dog.barks); // Output: true
Деструктуризация позволяет извлечь свойства объекта в переменные.
Пример:
const person = { name: "Alice", age: 25 }; const { name, age } = person; console.log(name); // Output: Alice console.log(age); // Output: 25
Привет, я Абхай Сингх Катхаят!
Я Full-Stack разработчик с опытом работы как в интерфейсных, так и в серверных технологиях. Я работаю с различными языками программирования и платформами для создания эффективных, масштабируемых и удобных для пользователя приложений.
Не стесняйтесь обращаться ко мне по моей деловой электронной почте: [email protected].
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3