«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Освоение объектов в JavaScript

Освоение объектов в JavaScript

Опубликовано 22 декабря 2024 г.
Просматривать:655

Mastering Objects in JavaScript

Объекты в JavaScript

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


1. Создание объектов

А. Объектный литерал

Самый простой способ создать объект — использовать фигурные скобки {}.

Пример:

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!

С. Использование Object.create()

Этот метод создает новый объект с указанным прототипом.

Пример:

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!

2. Доступ к свойствам объекта

А. Точечная запись

Доступ к свойствам осуществляется с помощью точки (.).

Пример:

console.log(person.name); // Output: Alice

Б. Обозначение скобок

Доступ к свойствам осуществляется с помощью квадратных скобок ([]). Полезно для динамических имен свойств.

Пример:

console.log(person["name"]); // Output: Alice
const key = "age";
console.log(person[key]); // Output: 25

3. Добавление, изменение и удаление свойств

  • Добавление:
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

4. Методы в объектах

Когда функция является свойством объекта, она называется методом.

Пример:

const car = {
  brand: "Tesla",
  start: function () {
    console.log("Car started!");
  },
};

car.start(); // Output: Car started!

5. Перебор свойств объекта

А. Использование for...in

Перебрать все перечислимые свойства объекта.

Пример:

for (let key in person) {
  console.log(`${key}: ${person[key]}`);
}

Б. Использование Object.keys()

Возвращает массив ключей объекта.

Пример:

Object.keys(person).forEach((key) => {
  console.log(`${key}: ${person[key]}`);
});

С. Использование Object.entries()

Возвращает массив пар [ключ, значение].

Пример:

Object.entries(person).forEach(([key, value]) => {
  console.log(`${key}: ${value}`);
});

6. Методы объекта

JavaScript предоставляет несколько встроенных методов для работы с объектами.

  • Object.assign(): копирует свойства одного объекта в другой.
const target = { a: 1 };
const source = { b: 2 };
Object.assign(target, source);
console.log(target); // Output: { a: 1, b: 2 }
  • Object.freeze(): предотвращает изменение объекта.
const obj = { a: 1 };
Object.freeze(obj);
obj.a = 2; // No effect
console.log(obj.a); // Output: 1
  • Object.seal(): предотвращает добавление или удаление свойств, но позволяет изменять существующие свойства.
const obj = { a: 1 };
Object.seal(obj);
obj.b = 2; // No effect
obj.a = 3; // Works
console.log(obj); // Output: { a: 3 }

7. Прототипы и наследование

Объекты в 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

8. Деструктуризация объекта

Деструктуризация позволяет извлечь свойства объекта в переменные.

Пример:

const person = { name: "Alice", age: 25 };
const { name, age } = person;
console.log(name); // Output: Alice
console.log(age); // Output: 25

9. Краткое содержание

  • Объекты — это пары ключ-значение, в которых могут храниться свойства и методы.
  • Используйте литералы объектов для простого создания объектов.
  • Доступ к свойствам объекта осуществляется с помощью точки или скобок.
  • Используйте встроенные методы, такие как Object.keys(), Object.assign() и Object.freeze(), для эффективного манипулирования объектами.
  • Освоение объектов имеет решающее значение для понимания сложных концепций JavaScript, таких как прототипы и наследование.

Привет, я Абхай Сингх Катхаят!
Я Full-Stack разработчик с опытом работы как в интерфейсных, так и в серверных технологиях. Я работаю с различными языками программирования и платформами для создания эффективных, масштабируемых и удобных для пользователя приложений.
Не стесняйтесь обращаться ко мне по моей деловой электронной почте: [email protected].

Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/abhay_yt_52a8e72b213be229/mastering-objects-in-javascript-4p57?1. Если есть какие-либо нарушения, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3