我有一个看起来像这样的数组:
thing1,thing2,thing3
我需要将其重新格式化为:
[
{ value: 'thing1', data: 'thing1' },
{ value: 'thing2', data: 'thing2' },
{ value: 'thing3', data: 'thing3' },
]
我目前的功能看起来像这样,但显然不起作用:
function combine_ids(ids) {
return (ids.length ? " [ { value: '" + ids.join("'," + " data: '" + ids + " ' } ] ") : "");
}
答案 0 :(得分:2)
假设你的数组看起来像这样
var arr = ["thing1","thing2","thing3"]
您可以像这样使用.map()
var result = arr.map(function(item){
return {"value": item, "data": item};
});
将返回此
[
{"value":"thing1","data":"thing1"},
{"value":"thing2","data":"thing2"},
{"value":"thing3","data":"thing3"}
]
你可以像这样改变你的方法
function combine_ids(arr){
return arr.map(function(item){
return {"value": item, "data": item};
});
}
var result = combine_ids(arr);
var arr = ["thing1","thing2","thing3"]
function combine_ids(arr){
return arr.map(function(item){
return {"value": item, "data": item};
});
}
var result = combine_ids(arr);
alert(JSON.stringify(result));
答案 1 :(得分:0)
试试这个
function combine_ids(ids) {
var Aobj=[];
for (var x in ids){
Aobj.push({'value':ids[x],'data' : ids[x]})
}
return Aobj;
}
combine_ids(['thing1','thing2','thing3'])