我有具有以下结构的JavaScript对象数组:
objArray = [ { foo: 1, bar: 2}, { foo: 3, bar: 4}, { foo: 5, bar: 6} ];
我想从每个对象中提取一个字段,并获得一个包含值的数组,例如字段foo
将给出数组[ 1, 3, 5 ]
。
我可以用这个简单的方法做到这一点:
function getFields(input, field) {var output = [];for (var i=0; i < input.length ; ++i)output.push(input[i][field]);return output;}
var result = getFields(objArray, "foo"); // returns [ 1, 3, 5 ]
有没有更优雅或更惯用的方法来做到这一点,这样就不需要自定义实用函数了?
注意建议重复,它介绍了如何将单个对象转换为数组。