从对象数组中获取属性数组

时间:2014-03-10 11:49:32

标签: javascript

假设我在javascript中有一个对象数组

var array=[{id:1,message:"hello",time:"00-00-0000"},{id:2,message:"sup",time:"00-00-0000"},...];

获取仅包含message属性的数组的最佳方法是什么。即。

var messages=["hello","sup",...];

3 个答案:

答案 0 :(得分:8)

“最佳”方式是:

var messages = array.map(function(x) {return x.message;});

最兼容的方式:

for(var messages=[],i=0,l=array.length; i<l; i++) messages[i]=array[i].message;

答案 1 :(得分:0)

var messages = [];

for(var i = 0; i < array.length; i++) {
    messages.push(array[i][1]);
}

答案 2 :(得分:0)

@Niet the Dark Absol 解决方案的更简洁、更现代的变体是:

const messages = array.map(x => x.message);