how to get last records of unique usernames from an array in java script

前端 未结 3 1948
余生分开走
余生分开走 2021-01-29 10:46

I have an Array of Objects Like:

[ 
 { id: 8, username: \'peter\' ,weight:80,date:\'2019-10-14\'},
 { id: 1, username: \'harry\' ,weight:80,date:\'2019-01-01\'},         


        
3条回答
  •  夕颜
    夕颜 (楼主)
    2021-01-29 11:05

    You could take a Map and get the values.

    var array = [{ id: 1, username: 'harry', weight: 80, date: '2019-01-01' }, { id: 2, username: 'harry', weight: 84, date: '2019-02-21' }, { id: 3, username: 'john', weight: 80, date: '2019-03-11' }, { id: 4, username: 'peter', weight: 80, date: '2019-08-06' }, { id: 5, username: 'peter', weight: 80, date: '2019-06-11' }, { id: 6, username: 'harry', weight: 90, date: '2019-04-03' }, { id: 7, username: 'john', weight: 80, date: '2019-05-25' }, { id: 8, username: 'peter', weight: 80, date: '2019-10-14' }],
        result = Array.from(new Map(array.map(o => [o.username, o])).values());
    
    console.log(result);
    .as-console-wrapper { max-height: 100% !important; top: 0; }

提交回复
热议问题