在我的代码中,我处理了一个数组,该数组有一些条目,其中许多对象相互嵌套,而有些则没有。它看起来类似于以下内容:
// where this array is hundreds of entries long, with a mix
// of the two examples given
var test = [{'a':{'b':{'c':"foo"}}}, {'a': "bar"}];
这给我带来了问题,因为我有时需要遍历数组,而这种不一致给我带来了如下错误:
for (i=0; i<test.length; i++) {
// ok on i==0, but 'cannot read property of undefined' on i==1
console.log(a.b.c);
}
我知道我可以说if(a.b){ console.log(a.b.c)}
,但是在最多有 5 或 6 个对象相互嵌套的情况下,这是非常乏味的。有没有其他(更简单的)方法可以让它只在 console.log 存在的情况下执行,但不会抛出错误?