使用Underscore.js或jQuery-JavaScript将对象数组按字段转换为数组

时间:2014-11-05 19:23:44

标签: javascript jquery arrays underscore.js

有没有办法像这样转换数组:

"team" : [   {       "player" : "John",   "rank" : 0 }, {       "player" : "Peter",   "rank" : 2 } ]

到此:

"team" : [ "John", "Peter" ]

使用Underscore.js还是jQuery?

非常感谢任何帮助。

3 个答案:

答案 0 :(得分:6)

使用pluck

  

可能是最常见的用例的便捷版本   map:提取属性值列表。

var stooges = [{name: 'moe', age: 40}, {name: 'larry', age: 50}, {name: 'curly', age: 60}];
_.pluck(stooges, 'name');
=> ["moe", "larry", "curly"]

答案 1 :(得分:1)

您可以通过map函数

使用普通的旧JavaScript进行操作
var someArray = [
    {name:'John', age:23},
    {name:'Foo', age:34},
    {name:'Bar', age:10},
    {name:'Doe', age:65}
];
var nameArray = someArray.map(function(el) {return el.name;});

答案 2 :(得分:1)

使用纯JavaScript 只需遍历它并将播放器推入新阵列:

var array = [];
for(i in team){
  array.push(team[i].player);
}

或使用underscore.js使用plug

var array = _.pluck(team, 'player');