Arrays lodash从一个对象映射关键帧,该对象具有对象数组中的值
我有以下对象:Arrays lodash从一个对象映射关键帧,该对象具有对象数组中的值,arrays,node.js,underscore.js,lodash,Arrays,Node.js,Underscore.js,Lodash,我有以下对象: var kmap={ key1:"useless", key2:"useless", key3:"useless" }; var incoming=[ {value:"asd"}, {value:"qwe"}, {value:"zxc"} ]; { key1:"asd", key2:"qwe", key3:"zxc", } var result={}; var keys=Object.keys(kma
var kmap={
key1:"useless",
key2:"useless",
key3:"useless"
};
var incoming=[
{value:"asd"},
{value:"qwe"},
{value:"zxc"}
];
{
key1:"asd",
key2:"qwe",
key3:"zxc",
}
var result={};
var keys=Object.keys(kmap);
for(var i=0;i<incoming.length;i++)
{
result[keys[i]]=incoming[i].value;
}
我需要用这个对象数组的值映射它的键:
var kmap={
key1:"useless",
key2:"useless",
key3:"useless"
};
var incoming=[
{value:"asd"},
{value:"qwe"},
{value:"zxc"}
];
{
key1:"asd",
key2:"qwe",
key3:"zxc",
}
var result={};
var keys=Object.keys(kmap);
for(var i=0;i<incoming.length;i++)
{
result[keys[i]]=incoming[i].value;
}
结果:
var kmap={
key1:"useless",
key2:"useless",
key3:"useless"
};
var incoming=[
{value:"asd"},
{value:"qwe"},
{value:"zxc"}
];
{
key1:"asd",
key2:"qwe",
key3:"zxc",
}
var result={};
var keys=Object.keys(kmap);
for(var i=0;i<incoming.length;i++)
{
result[keys[i]]=incoming[i].value;
}
以下是我现在的做法:
var kmap={
key1:"useless",
key2:"useless",
key3:"useless"
};
var incoming=[
{value:"asd"},
{value:"qwe"},
{value:"zxc"}
];
{
key1:"asd",
key2:"qwe",
key3:"zxc",
}
var result={};
var keys=Object.keys(kmap);
for(var i=0;i<incoming.length;i++)
{
result[keys[i]]=incoming[i].value;
}
var result={};
var keys=Object.keys(kmap);
对于(var i=0;i,您可以将它们与以下函数组合:
var-kmap={
键1:“无用”,
键2:“无用”,
关键3:“无用”
};
输入变量=[
{值:“asd”},
{value:“qwe”},
{value:“zxc”}
];
功能联合收割机(obj1、obj2、propToTake){
返回Object.key(obj1).map(函数(key,i){
返回{
[key]:obj2[i]?obj2[i][propToTake]:未定义
}
});
}
console.log(combine(kmap,incoming,'value'));
您可以使用以下函数将它们组合起来:
var-kmap={
键1:“无用”,
键2:“无用”,
关键3:“无用”
};
输入变量=[
{值:“asd”},
{value:“qwe”},
{value:“zxc”}
];
功能联合收割机(obj1、obj2、propToTake){
返回Object.key(obj1).map(函数(key,i){
返回{
[key]:obj2[i]?obj2[i][propToTake]:未定义
}
});
}
log(combine(kmap,incoming,'value');
这里有一个使用lodash的解决方案:
var result = _.zipObject(_.keys(kmap), _.map(incoming, 'value'))
在给定一个键数组和一个值数组的情况下创建一个对象。我们从kmap
获取的键以及从传入的
中提取的值
var-kmap={
键1:“无用”,
键2:“无用”,
关键3:“无用”
};
输入变量=[
{值:“asd”},
{value:“qwe”},
{value:“zxc”}
];
var result=u.zipObject(u.keys(kmap),u.map(传入,'value'))
document.getElementById('result').textContent=JSON.stringify(result);
以下是使用lodash的解决方案:
var result = _.zipObject(_.keys(kmap), _.map(incoming, 'value'))
在给定一个键数组和一个值数组的情况下创建一个对象。我们从kmap
获取的键以及从传入的
中提取的值
var-kmap={
键1:“无用”,
键2:“无用”,
关键3:“无用”
};
输入变量=[
{值:“asd”},
{value:“qwe”},
{value:“zxc”}
];
var result=u.zipObject(u.keys(kmap),u.map(传入,'value'))
document.getElementById('result').textContent=JSON.stringify(result);
哦,来吧!为什么要投否决票?哦,来吧!为什么要投否决票?