2016-01-13 43 views
0

我有一個對象數組,如下所示:轉換對象數組到字符串數組

var array = [ 
    {'id':1,'description':test}, 
    {'id':2,'description':test}, 
    {'id':3,'description':test} 
] 

我想將它轉化成這個樣子:

var newArray = [ 
    1, 2, 3 
] 

所以基本上走的是對象數組,從對象中提取id,並創建一個包含已提取的id的新數組。有沒有辦法在一行中做到這一點?更好的是,如果不需要創建新陣列,並且剛剛更新array

回答

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}))

0

迭代array使用foreach和填充newArray

var newArray = []; 
array.forEach(funtion(element){ 
    newArray.push(element.id); 
}); 
console.log(newArray); 
0
array.map(function(element) {return element.id}) 

OP要求:更好,如果數組是剛剛更新

array = array.map(function(element) {return element.id}) 
+0

@ TaoP.R.O.P自找的 –

+0

哦,我錯過了。 –

0
array.map(function (item) { 
    return item["id"]; 
} 

如果你想有重新實例映射陣列:

var newarray = []; 
array.forEach(function (item) { 
    newarray.push(item["id"]); 
} 
相關問題