javascript 展平嵌套对象
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 展平嵌套对象相关的知识,希望对你有一定的参考价值。
const nested = {
id: 1,
children: [
{ id: 2 },
{ id: 3,
children: [{ id: 5 }, { id: 6 }]
},
{ id: 4 }
]
}
const flatten = function(obj) {
const array = Array.isArray(obj) ? obj : [obj];
return array.reduce(function(acc, value) {
acc.push(value);
if (value.children) {
acc = acc.concat(flatten(value.children));
delete value.children;
}
return acc;
}, []);
}
flatten(nested);
// => [ { id: 1 }, { id: 2 }, { id: 3 }, { id: 5 }, { id: 6 }, { id: 4 } ]
以上是关于javascript 展平嵌套对象的主要内容,如果未能解决你的问题,请参考以下文章
如何在javascript中展平嵌套数组? [复制]
展平/取消展平嵌套 JSON 对象的最快方法
展平嵌套的 JSON 对象
如何使用 linq 表达式展平嵌套对象
如何使用 linq 表达式展平嵌套对象
使用 AutoMapper 展平嵌套对象的更好方法?