【发布时间】:2018-04-23 07:49:02
【问题描述】:
已编辑的问题。感谢@WiktorZychla 唤醒了我周一关于递归的大脑。下面的代码现在可以正常工作了。
如果我在这里有一个像这样的虚拟对象:
const dummy = {
a: 1,
b: 2,
c: {
d: 3,
e: {
f: 4
}
},
g: 5
};
我可以遍历它:
const xavier = (value, s) => {
for (const key in value) {
if (value.hasOwnProperty(key)) {
if (typeof value[key] === 'object' && value[key] !== null) {
xavier(value[key], s + '.' + key);
} else {
console.log(s + '.' + key + ' ' + value[key]);
}
}
}
};
现在打印以下内容:
.a 1
.b 2
.c.d 3
.c.e.f 4
.g 5
【问题讨论】:
-
听说过递归吗?
-
使用 lodash.js。它有某种扁平化功能
-
@WiktorZychla 实际上我已经完全忘记了它。抱歉耽误您的时间!
标签: javascript json object