我有以下数组;
["Test1", "Test2", "Test3"]
我希望它像这样;
[{ id: 0, name: "Test1" }, { id: 1, name: "Test2" }, { id: 2, name: "Test3" }]
任何帮助?
我想我应该以某种方式使用_.object()
来完成这项任务。
答案 0 :(得分:4)
map()功能是你的朋友:
_.map(array, function(item, index) {
return { id: index, name: item };
});
答案 1 :(得分:1)
当你使用角度时,这应该只是诀窍。
var newArray = [];
angular.forEach(myArray,function(item, key){
newArray.push({id:key, name:item});
});
答案 2 :(得分:1)
以下解决方案不需要角度,仅基于lodash:
var newArray = [];
_.forEach(["Test1", "Test2", "Test3"], function (item, key) {
newArray.push({
id: key,
name: item
});
});