简单数组和对象数组的去重及排序

去重: 

    function trimArr(arr) {
      return Array.from(new Set(arr));
    }
    console.log(trimArr([2, 3, 2, 2, 44]))//[2, 3, 44]

    function trimObjArr(arr) {
      var mapObj = new Map()
      return arr.filter(n => !mapObj.has(n.id) && mapObj.set(n.id))
    }
    var objArr = [
      {
        id: '1',
        name: 'a'
      }, {
        id: '1',
        name: 'b'
      }, {
        id: '2',
        name: 'c'
      }]
    console.log(trimObjArr(objArr)) //[{id: '1', name: 'a'}, { id: '2', name: 'c' }]

 排序:

    // 数字排序
    var arrNum = ['11', 2, 33, 5, 8]
    arrNum.sort(function (a, b) {
      return a - b //升序,降序为b - a
    })
    console.log(arrNum)

    //对象数组排序
    var arrObj = [
      { name: 'aa', age: '18' },
      { name: 'bb', age: 8 },
      { name: 'cc', age: 0 },
      { name: 'dd', age: 20 }
    ];
    arrObj.sort(function (a, b) {
      return a['age'] - b['age'];//升序,降序为b - a
    })
    console.log(arrObj)

猜你喜欢

转载自blog.csdn.net/qq_41111677/article/details/111997469
今日推荐