我有一个字符串数组和这样的params对象。如何创建params常量?使用forEach,map和or filter?
key = ['dog', 'car', 'cat'];
value = [ 3, 1, 2 ];
const params = {
item: {
[key]: value[0],
// more keys to be appended
}
}
答案 0 :(得分:1)
循环遍历每个值:
const key = ['dog', 'car', 'cat'];
const value = [ 3, 1, 2 ];
const item = {};
key.forEach((k, i) => { item[k] = value[i]; });
const parmas = {};
parmas.item = item;
console.log(parmas);
答案 1 :(得分:0)
您可以使用以下语法设置对象的键:
obj[key] = value
所以在你的情况下,你可以做类似的事情:
key = ['dog', 'car', 'cat'];
value = [ 3, 1, 2 ];
var params = {
item : {}
}
for (var i=0; i<key.length;i++){
params.item[key[i]] = value[i];
}
答案 2 :(得分:0)
你可以这样做:
value.reduce((acc, val, index) => (acc[key[index]] = val, acc), {});
这会产生:
{dog:3,car:1,cat:2}