gpt4 book ai didi

javascript - 将对象的参数转换为 Node 中的嵌套数组

转载 作者:太空宇宙 更新时间:2023-11-04 01:58:26 26 4
gpt4 key购买 nike

我有一个看起来像这样的对象:

let set = {
key1: 'value1',
key2: 'value2',
key3: 'value3',
key4: 'ignored',
key5: 'also ignored'
}

我还有一个键数组,用于跟踪应使用 set 对象中的哪些键以及嵌套顺序:

let keys = ['key1', 'key2', 'key3']

如何根据 keys 中定义的层次结构将 set 对象转换为嵌套对象?我想要的输出如下所示:

{
key1: [{
name: 'value1',
key2: [{
name: 'value2',
key3: [{
name: 'value3'
}]
}]
}]
}

setkeys 都可以是任意长度。

最佳答案

您可以减少键并为每一步返回内部对象。

var set = { key1: 'value1', key2: 'value2', key3: 'value3', key4: 'ignored', key5: 'also ignored' },
keys = ['key1', 'key2', 'key3'],
result = {};

keys.reduce(function (o, k) {
var temp = { name: set[k] };
o[k] = [temp];
return temp;
}, result);

console.log(result);
.as-console-wrapper { max-height: 100% !important; top: 0; }

关于javascript - 将对象的参数转换为 Node 中的嵌套数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46915330/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com