我有一个如下所示的Object数组:
var array = [
{'id':1,'description':test},
{'id':2,'description':test},
{'id':3,'description':test}
]
我想把它转换成这样:
var newArray = [
1, 2, 3
]
所以它基本上是取对象数组,从对象中提取id
,然后创建一个包含被提取的id
的新数组。有没有办法在一行中做到这一点?如果不必创建新数组并且只更新array
,那就更好了。
答案 0 :(得分:3)
var test ="sai";
var array = [
{'id':1,'description':test},
{'id':2,'description':test},
{'id':3,'description':test}
]
console.log(array.map(function(obj){return obj.id}))

答案 1 :(得分:0)
使用foreach迭代array
并填充newArray
var newArray = [];
array.forEach(funtion(element){
newArray.push(element.id);
});
console.log( newArray );
答案 2 :(得分:0)
array.map(function(element) {return element.id})
OP要求:如果刚更新数组则更好
array = array.map(function(element) {return element.id})
答案 3 :(得分:0)
array.map(function (item) {
return item["id"];
}
如果您想拥有映射数组的新实例:
var newarray = [];
array.forEach(function (item) {
newarray.push(item["id"]);
}