遍历数组并仅将每个元素中的一个推送到另一个数组

时间:2018-05-31 15:03:27

标签: arrays angular loops

我有来自服务的数组,在该数组中我有相同的元素(例如:1,2,2,3,1,1,3)。我想创建另一个数组,它只包含前一个数组中每个元素中的一个(所以新数组应该看起来像[1,2,3等])。你能指点我这个功能的错误。感谢

this.dataService.get().subscribe( response => {

        this.Data = response;
        response.forEach(res => {
            for (this.i = 0; this.i < this.headData.length; this.i++){
                res.head !== this.headData[this.i];
            }
            this.headData.push(res.head);
        }) }

1 个答案:

答案 0 :(得分:2)

使用Set生成数组中的唯一项

var items = [1,2,2,3,1,1,3]
var uniqueItems = Array.from(new Set(items))

reference

或者您可以使用sortedUniq Lodash功能。

_.sortedUniq([1, 1, 2]);
// this is the result  => [1, 2]