Я ясно думаю о создании нового объекта? - PullRequest
0 голосов
/ 06 августа 2020
let person = {

name:"kevin",
eyeColor:"blue",
age: 34,
address: {

street: "12 havering road",
town: "romford", 

house: {
type: "terraced",
bedrooms: 3,

}
},
updateAge: function () { 

let age = ++person.age;
return age;

}
};

console.log(person.updateAge());
let details = person.address.house;
alert(details.type);

Всем привет, по предметам животрепещущий вопрос. Я должен сказать, что когда я смотрю учебные пособия по этому поводу, большинство из них неясны, поскольку мне нравится понимать концепции, а не просто конечные цели, но, похоже, я не могу найти много материала в отношении концепций, поэтому после нескольких часов игры с консолью. я придумал это. Я могу ошибаться, но мне нужно спросить себя вменяемым В приведенном выше коде я представляю var person как глобальный объект окна. Адрес как документ (свойство оконного объекта). house как getElementById (я знаю, что это метод по сравнению со свойством, но я сосредотачиваюсь только на пути доступа к свойствам и методам в объектах. Затем я предполагаю, что я назначаю все для varialbe, а затем .type похож на .inner HTML. Итак хотя, очевидно, функционально не то же самое. Правильно ли я говорю, что включая глобальный объект окна путь, например,

var box = window.document.getElementById('box');
box.innerHTML = 

ТАК ЖЕ, КАК

var box = person.address.house;
box.type =

Obvs игнорируют функциональность, но путь создания моих собственных объектов, правильно ли я говорю, что это аналогичная установка?

спасибо всем

1 Ответ

1 голос
/ 07 августа 2020

Думаю, я понимаю, о чем вы спрашиваете. window.document.getElementById ('box'). inner HTML аналогичен вызову person.address.house.type. Тем не менее, я должен указать, что объект окна является встроенным объектом javascript, и ваш объект person был создан вами. Объект окна состоит из набора свойств и методов, которые затем содержат вложенные свойства и методы, которые похожи на ваш объект person!

Если вы когда-нибудь захотите увидеть, какие свойства и методы содержит объект можно использовать console.dir ():

console.dir(window);

let person = {

name:"kevin",
eyeColor:"blue",
age: 34,
address: {

street: "12 havering road",
town: "romford", 

house: {
type: "terraced",
bedrooms: 3,

}
},
updateAge: function () { 

let age = ++person.age;
return age;

}
};
console.dir(person);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...