Чтение свойств
Объект полезен, только если можно получить его значения обратно. Чтобы прочитать свойство, напишите имя объекта, точку и ключ:
const book = {
title: "Хоббит",
author: "Дж. Р. Р. Толкин",
pages: 310
};
console.log(book.title);
console.log(book.pages);Хоббит
310Точку вы уже знаете по массивам: list.length читает свойство length массива.
book.title — такое же значение, как любое другое. Его можно сохранить в переменную, вычислять с ним или вставить в шаблонную строку:
const book = { title: "Хоббит", author: "Дж. Р. Р. Толкин", pages: 310 };
const days = book.pages / 10;
console.log(`${book.author} — ${book.title}`);
console.log("Дней на чтение по 10 страниц в день:", days);Дж. Р. Р. Толкин — Хоббит
Дней на чтение по 10 страниц в день: 31А если прочитать свойство, которого в объекте нет? В отличие от опечатки в имени переменной, это не ошибка. Вы получите undefined — особое значение «здесь ничего нет», знакомое вам по массивам:
const book = { title: "Хоббит", author: "Дж. Р. Р. Толкин", pages: 310 };
console.log(book.year);
console.log(book.Title);undefined
undefinedУ книги нет year. А Title — это не title: как и в именах переменных, в ключах важны заглавные и строчные буквы. Поэтому, увидев неожиданное undefined, проверьте, как вы написали ключ.
Ещё одна ошибка: ключ после точки пишется без кавычек. book."title" заканчивается ошибкой SyntaxError: Unexpected string.
Задание
- 1
Программа выводит
undefined. Исправьте ключ вconsole.log, чтобы она вывела название книги,Хоббит. - 2
Ниже выведите предложение
В книге «Хоббит» 310 страниц.Название и число не вводите сами: прочитайте их из объекта черезbook.titleиbook.pages, например в шаблонной строке.