3 回答

TA贡献1757条经验 获得超7个赞
您可以创建像这样的递归函数来对cars对象进行深度优先遍历。
var findObjectByLabel = function(obj, label) {
if(obj.label === label) { return obj; }
for(var i in obj) {
if(obj.hasOwnProperty(i)){
var foundLabel = findObjectByLabel(obj[i], label);
if(foundLabel) { return foundLabel; }
}
}
return null;
};
可以这样称呼
findObjectByLabel(car, "Chevrolet");

TA贡献1812条经验 获得超5个赞
如果你想深遍历到一个复杂的(嵌套)对象为每个键和值,你可以这样做使用Object.keys() ,递归:
const iterate = (obj) => {
Object.keys(obj).forEach(key => {
console.log(`key: ${key}, value: ${obj[key]}`)
if (typeof obj[key] === 'object') {
iterate(obj[key])
}
})
}
添加回答
举报