需要实现的数据结构:const data = [{...},{...},...];
// 现在有二维数组 arrays
arrays = [[1,2,3],[4,5,6],[7,8,9],[10,11,12]];
// 现有key数组 keys
keys = ['a','b','c'];
问题:如何将上面的数据组合成如下的形式?
data = [{a:1,b:2,c:3},{a:4,b:5,c:6},{a:7,b:8,c:9},{a:10,b:11,c:12}];
需要实现的数据结构:const data = [{...},{...},...];
// 现在有二维数组 arrays
arrays = [[1,2,3],[4,5,6],[7,8,9],[10,11,12]];
// 现有key数组 keys
keys = ['a','b','c'];
问题:如何将上面的数据组合成如下的形式?
data = [{a:1,b:2,c:3},{a:4,b:5,c:6},{a:7,b:8,c:9},{a:10,b:11,c:12}];
如果能保证如此的结构的话
arrays.map(item => {
let rt = {}
keys.forEach((key, idx) => {
rt[key] = item[idx]
})
return rt
})
反正楼上已有答案了,我这菜鸟就来写个es5的来练练手
for (var i = 0; i < arrays.length; i++) {
var obj = {};
for (var j = 0; j < keys.length; j++) {
obj[j] = arrays[i][j];
}
data.push(obj);
}
var data = arrays.map(item => {
const obj = {};
for(let i = 0; i < keys.length; i++){
obj[keys[i]] = item[i];
}
return obj;
})
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.9k 阅读✓ 已解决
3 回答2.5k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
keys数组里面的值要这样写才行:
keys = ['a', 'b', 'c']
,否则a,b,c是变量