我想要获取嵌套JS对象中的键的计数。我能够达到第一级,但我有点卡在我将如何挖入嵌套的对象并返回一个计数。嵌套对象中的键计数
var properties = {
prop1: '',
prop2: '',
prop3: '',
prop4: {
subProp1: '',
subProp2: '',
subProp3: {
subSubprop1: ''
}
}
}
var getCount = function (data) {
var count = 0;
for (var k in data) {
if (properties.hasOwnProperty(k)) {
++count;
}
}
console.log("this is the count for level 0: " + count //returns 4);
console.log("this is the count for level 1: " + count //should return 3);
console.log("this is the count for level 2: " + count //should return 1);
return count;
}
getCount(properties);
密切相关:什么是递归什么时候应该使用它?(http://stackoverflow.com/q/3021/464709) –