我创建了一个包含 3 个对象的对象,其中一个包含三个对象,我想让它们中的每一个都设置值。
而且不知道是否以对象的类型来划分,好像都是Object。
我尝试这样做,第一次遍历以识别对象和数组,然后遍历两次,第三次离开,但控制台显示错误。
>无法设置未定义的属性“www.google.com”
类型错误:无法
在eval处设置未定义的属性“www.google.com”(userscript.html?name=
在Array.forEach()
原脚本排除了四层嵌套Object浏览器搜索工具
Object.keys(iconsData).forEach(function(value1) {
if(iconsData[value1].constructor === Array){
iconsData[value1].forEach(function (value2) {
console.log('typeArray--'+iconsData[value1].constructor)
value2.host.forEach(function(host) {
iconsData.hostCustomMap[host] = value2.custom // The console shows an Error maybe here
})
})
} else if (iconsData[value1].constructor === Object) {
Object.keys(iconsData[value1]).forEach(function (value2) {
console.log('typeObject--'+iconsData[value1].constructor)
iconsData[value1][value2].forEach(function (value3) {
value3.host.forEach(function(host){
iconsData.hostCustomMap[host] = value3.custom
});
});
});
}
})
以下代码包含嵌套对象。
慕标5832272
相关分类