2016-11-15 54 views
1

比方說,我有以下幾點:JavaScript通過對象數組只能通過郵件ID

[ 
{ messageid: '582b4350af7cb8f21e4b7b43', 
     _id: 582b4c79105387dd21e08004 } , 
{ messageid: '582b4350af7cb8f21e4b7xb43', 
     _id: 582b4c79105387dd21e08s004 } 

] 

我怎樣才能使它產生一個陣列,只會是messageid'的價值觀?

像:

{582b4350af7cb8f21e4b7b43,582b4350af7cb8f21e4b7xb43}

注:普通的JavaScript或角

+0

循環需要一個數組或對象? –

回答

2

您可以使用.map

var output = input.map(function(item) { 
    return item.messageid; 
}); 

這將創建一個數組,看起來像[582b4350af7cb8f21e4b7b43,582b4350af7cb8f21e4b7xb43]

2

你可以映射屬性messageid

var objectArray = [{ messageid: '582b4350af7cb8f21e4b7b43', _id: '582b4c79105387dd21e08004' }, { messageid: '582b4350af7cb8f21e4b7xb43', _id: '582b4c79105387dd21e08s004' }], 
 
    newArray = objectArray.map(function (o) { 
 
     return o.messageid; 
 
    }); 
 

 
console.log(newArray);

1

使用forEach通過陣列

var orArray = [{ 
     messageid: '582b4350af7cb8f21e4b7b43', 
     _id: '582b4c79105387dd21e08004' 
     }, { 
     messageid: '582b4350af7cb8f21e4b7xb43', 
     _id: '582b4c79105387dd21e08s004' 
     } 

    ]; 

    var newArr = []; 
    orArray.forEach(function(item) { 
     newArr.push(item.messageid) 
    }); 
    console.log(newArr) 

DEMO