gpt4 book ai didi

javascript - 将带数组的对象转换为带对象的数组的最佳方法,反之亦然

转载 作者:行者123 更新时间:2023-11-29 17:52:17 24 4
gpt4 key购买 nike

将数组对象转换为对象数组的最佳方法是什么,反之亦然

{
category : ['a','b','c'],
title : ['e','f','g'],
code : ['z','x','v']
}

[
{
category : 'a',
title : 'e',
code : 'z'
},
{
category : 'b',
title : 'f',
code : 'x'
},
{
category : 'c',
title : 'g',
code : 'v'
},
]

最佳答案

您可以使用两个函数来生成数组或对象。他们与

function getArray(object) {
return Object.keys(object).reduce(function (r, k) {
object[k].forEach(function (a, i) {
r[i] = r[i] || {};
r[i][k] = a;
});
return r;
}, []);
}

function getObject(array) {
return array.reduce(function (r, o, i) {
Object.keys(o).forEach(function (k) {
r[k] = r[k] || [];
r[k][i] = o[k];
});
return r;
}, {});
}

var data = { category: ['a', 'b', 'c'], title: ['e', 'f', 'g'], code: ['z', 'x', 'v'] };

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

关于javascript - 将带数组的对象转换为带对象的数组的最佳方法,反之亦然,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42342552/

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