Значением свойства объекта может быть другой объект. В заданной структуре возраст доступен через person.Age, имя — через person.Name.Name, фамилия — через person.Name.LastName.
Как создать объект с возрастом и вложенным именем
Значением свойства объекта может быть другой объект. В заданной структуре возраст доступен через person.Age, имя — через person.Name.Name, фамилия — через person.Name.LastName.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
Создайте на JavaScript объект person: на верхнем уровне Age равен 30, а свойство Name содержит объект с полями Name = 'Анна' и LastName = 'Иванова'. Покажите чтение фамилии и изменение возраста.
Ответ
Значением свойства объекта может быть другой объект. В заданной структуре возраст доступен через person.Age, имя — через person.Name.Name, фамилия — через person.Name.LastName.
const person = {
Age: 30,
Name: {
Name: 'Анна',
LastName: 'Иванова'
}
};
console.log(person.Name.LastName); // Иванова
person.Age = 31;
console.log(person.Age); // 31
Повторение имени Name на разных уровнях допустимо, хотя может затруднять чтение. Если структура является внешним контрактом, названия сохраняют. В новом собственном контракте можно выбрать более ясную схему name: { firstName, lastName }, но это будет другая структура, а не альтернативный способ обращения к прежней.