objavlenie_obekta

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
objavlenie_obekta [2023/11/11 18:47]
tro
objavlenie_obekta [2023/12/14 20:17] (текущий)
tro
Строка 34: Строка 34:
  
 myCity.cityGreeting('Grettering') myCity.cityGreeting('Grettering')
 +</code>
 +
 +
 +<code>
 +const bookShelf = {
 +  books: ["The Last Kingdom"],
 +  getBooks() {
 +    return this.books;
 +  },
 +  addBook(bookName) {
 +    this.books.push(bookName);
 +  }
 +};
 </code> </code>
 ==== Массив обїектов ==== ==== Массив обїектов ====
Строка 147: Строка 160:
 book.pageCount = 836; book.pageCount = 836;
 </code> </code>
-===== Обхід обїекnа =====+===== Обхід обїекта =====
 ==== через for..in ==== ==== через for..in ====
 <code> <code>
Строка 185: Строка 198:
 const values = Object.values(book); const values = Object.values(book);
 console.log(values); // ["The Last Kingdom", "Bernard Cornwell", 8.38] console.log(values); // ["The Last Kingdom", "Bernard Cornwell", 8.38]
 +</code>
 +==== Через Object.entries() ====
 +Повертає масив власних перелічуваних пар властивостей ключ-значення з рядковими ключами.
 +==== обход массива обїектов ====
 +<code>
 +const books = [
 +  { title: "The Last Kingdom", author: "Bernard Cornwell", rating: 8.2 },
 +  { title: "Beside Still Waters", author: "Robert Sheckley", rating: 9 },
 +  { title: "The Dream of a Ridiculous Man", author: "Fyodor Dostoevsky", , rating: 6.8 }
 +];
 +
 +let totalRating = 0;
 +
 +for (const book of books) {
 +  totalRating += book.rating;
 +}
 +
 +const averageRating = totalRating / books.length;
 +console.log(averageRating); // 8
 </code> </code>
 ===== Поиск в обїекте ===== ===== Поиск в обїекте =====
Строка 240: Строка 272:
 </code> </code>
  
 +===== Обїединение обїектов =====
 +==== ...spread ====
 +(...spread) дозволяє розпилити властивості довільної кількості об'єктів в один новий.
 +Порядок розподілу має значення. Імена властивостей об'єкта — унікальні, тому властивості об'єкта, що розпиляються, можуть перезаписати значення вже існуючої властивості, якщо їх імена збігаються.
 +<code>
 +const first = { propA: 5, propB: 10 };
 +const second = { propC: 15 };
 +const third = { ...first, ...second };
 +console.log(third); // { propA: 5, propB: 10, propC: 15 }
 +</code>
 +===== Деструктурізація =====
 +<code>
 +'use strict';
 +
 +let options = {
 +  title: "Меню",
 +  width: 100,
 +  height: 200
 +};
 +
 +let {title, width, height} = options;
 +
 +alert(title);  // Меню
 +alert(width);  // 100
 +alert(height); // 200
 +</code>
  
  • /sites/data/attic/objavlenie_obekta.1699728425.txt.gz
  • Последнее изменение: 2023/11/11 18:47
  • tro