[英]How to convert an array to an object in Lodash?
I have: 我有:
{
dis:{["String1","String2","String3"]},
par:"pony"
}
And I want to turn it into this: 我想把它变成这样:
[
{ name: 'String1', value: "pony" },
{ name: 'String2', value: "pony" },
{ name: 'String3', value: "pony" }
]
You can do it easily, but beware you have double parentheses (mustaches and square bracket). 您可以轻松完成此操作,但是请注意,您要使用双括号(小括号和方括号)。
var
data = {
dis: ["String1","String2","String3"],
par: "pony"
},
result = [];
for (var index in data.dis)
result.push({ name: data.dis[index], value: data.par}
You can do it using Array.protoype.map : 您可以使用Array.protoype.map做到这一点:
var obj = { dis:["String1","String2","String3"], par:"pony" }; var arrOfObj = obj.dis.map(function(name) { return { name: name, value: obj.par } }); console.log(arrOfObj)
Or lodash's _.map : 或lodash的_.map :
var obj = { dis:["String1","String2","String3"], par:"pony" }; var arrOfObj = _.map(obj.dis, function(name) { return { name: name, value: obj.par } }); console.log(arrOfObj);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.13.1/lodash.min.js"></script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.