我有一个 JavaScript 对象数组,如下所示:
var start = [{
name: 'example name',
nextItem: {}
},
{
name: 'example name 2',
nextItem: {}
},
{
name: 'example name 3',
nextItem: {}
}];
我想将此数组转换为单个嵌套对象,其中第一个数组项的内部 nextItem
对象包含下一个数组项的整个对象。例如:
var output = {
name: 'example name',
nextItem: {
name: 'example name 2',
nextItem: {
name: 'example name 3',
nextItem: {}
}
}
}
有什么想法吗?
最佳答案
可以使用递归函数来完成:
function nestItems(items) {
var currentItem = items[0];
if (!currentItem) return {};
return {
name: currentItem.name,
nextItem: nestItems(items.slice(1))
};
}
nestItems(start);
关于javascript - 在 JavaScript 中将对象数组转换为嵌套对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45711173/