这是我的阵列:
mapping = [{sl_no : 1, type : "A", parent : ""},{sl_no : 2, type : "B", parent : "A"},{sl_no : 3, type : "D", parent : "B"}]
我希望数组采用以下格式:
mapped_sl_no = [{sl_no : 1},{sl_no : 2},{sl_no : 3}]
答案 0 :(得分:0)
Map是你的朋友......
var mapped = mapping.map(function(item) { return item.sl_no; });
答案 1 :(得分:0)
我建议将Array#map()
与临时对象一起使用。
var mapping = [{ sl_no: 1, type: "A", parent: "" }, { sl_no: 2, type: "B", parent: "A" }, { sl_no: 3, type: "D", parent: "B" }],
mapped_sl_no = getMapped(mapping, 'sl_no');
function getMapped(array, k) {
return array.map(function (a) {
var o = {};
o[k] = a[k];
return o;
});
}
document.write('<pre>' + JSON.stringify(mapped_sl_no, 0, 4) + '</pre>');
&#13;
答案 2 :(得分:0)
具有map
功能的解决方案:
var mapping = [{sl_no : 1, type : "A", parent : ""},{sl_no : 2, type : "B", parent : "A"},{sl_no : 3, type : "D", parent : "B"}];
var arr = mapping.map(function(obj){
return {'sl_no': obj.sl_no};
})
console.log(arr); // the output is: [{sl_no : 1},{sl_no : 2},{sl_no : 3}]
答案 3 :(得分:0)
var mapped_sl_no = [];
mapping.forEach(function(mapVal){
mapped_sl_no.push({sl_no:mapVal.sl_no});
});
这应该为你做。
否则,您可以使用下划线(http://underscorejs.org/)或lowdash(https://lodash.com/)这样的库