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(我知道这是一个与属性相比的方法,但我只关注访问对象中的属性和方法的路径。然后我假设我将所有属性都分配给一个variable,然后.type就像.inerHTML。因此,尽管在功能上明显不同。我说包括窗口全局对象到例如的路径是正确的吗
var box = window.document.getElementById('box');
box.innerHTML =
与相同
var box = person.address.house;
box.type =
Obv忽略了功能,但忽略了创建自己对象的路径,我说这是类似的设置吗?
感谢所有
我想我理解你的要求。window.docdocument.getElementById('box'(.inerHTML类似于调用person.address.house.type。但是,我必须指出,window对象是一个内置的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);