How to get distinct values from an array of objects in JavaScript?

前端 未结 30 3137
执笔经年
执笔经年 2020-11-22 05:29

Assuming I have the following:

var array = 
    [
        {\"name\":\"Joe\", \"age\":17}, 
        {\"name\":\"Bob\", \"age\":17}, 
        {\"name\":\"Carl\         


        
30条回答
  •  暗喜
    暗喜 (楼主)
    2020-11-22 05:44

    Simple distinct filter using Maps :

    let array = 
        [
            {"name":"Joe", "age":17}, 
            {"name":"Bob", "age":17}, 
            {"name":"Carl", "age": 35}
        ];
    
    let data = new Map();
    
    for (let obj of array) {
      data.set(obj.age, obj);
    }
    
    let out = [...data.values()];
    
    console.log(out);

提交回复
热议问题