如果我有一个像这样的 javascript 对象:{a : { b: { c: { ... }}}}
,我如何才能找到是否有 'x' 键对象及其值(value)是什么?
最佳答案
只要他们不担心循环引用,您就可以执行以下操作
function findX(obj) {
var val = obj['x'];
if (val !== undefined) {
return val;
}
for (var name in obj) {
var result = findX(obj[name]);
if (result !== undefined) {
return result;
}
}
return undefined;
}
注意:这将直接在此对象或其原型链中搜索属性“x”。如果您特别想将搜索限制在这个对象上,您可以执行以下操作
if (obj.hasOwnProperty('x')) {
return obj['x'];
}
并为 findX
的递归调用重复模式
关于javascript - 当他的深度未知时,如何在 JavaScript 对象中找到键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7437388/