按值从对象数组中获取重复项

时间:2017-01-09 19:44:09

标签: javascript

我有一个对象数组:

var arr = [
  {number: "AL-32021611", b: "7500"}, 
  {number: "AL-32021612", b: "Continental"}, 
  {number: "AL-32021612", b: "R3"}, 
  {number: "AL-32021612", b: "7500"}
];

有没有办法让我可以得到所有数字的巧合,并将数字值设为变量中的'b'值?

例如

//loop

result = ["Continental", "R3", "7500"] 

我想要的是例如我重新接收数字,然后我用该数字值搜索所有巧合,我真正需要的是巧合中的所有值

2 个答案:

答案 0 :(得分:2)

使用ES6功能:

let result = Array.from(new Set(arr.map(el => el.b)));

let result = [...new Set(arr.map(el => el.b))];

答案 1 :(得分:0)

Str为你提供了一个很好的单行答案,但你也可以通过一个简单的for循环显式地做到这一点。见下文。

如你所愿,

result = {"Continental", "R3" , "7500"}; 

不是有效对象。您可以使用for循环并将b值推送到一个新的数组中,如下所示:

result = [“Continental”,“R3”,“7500”];

你的for循环看起来像:

var result = [];
for(var n of arr) {
    result.push(arr[n].b);
}
return result;
相关问题