当前位置 主页 > 网站技术 > 代码类 >

    vue中对象数组去重的实现

    栏目:代码类 时间:2020-02-06 18:08

    其实很简单,一般的数组去重可以直接用 new Set() 方法即可,但是数组对象的话,比较复杂,不能直接用,我们可以采取间接的方法来去重

    unique(arr) {
     const res = new Map();
     return arr.filter((arr) => !res.has(arr.id) && res.set(arr.id, 1))
    }
     
    
    

    下面有一个示例,根据对象的id作为去重的依据:

     <el-button type="primary" size="medium" @click="quChong()">点击</el-button>
    quChong() {
        let arr = [
         {
          id: 1,
          name: '111'
         },
         {
          id: 1,
          name: '111'
         },
         {
          id: 2,
          name: '222'
         },
         {
          id: 3,
          name: '333'
         }
        ];
        console.log(arr);
        console.log('--------------------');
        let arr1 = this.unique(arr);
        console.log(arr1);
       },
       unique(arr) {
        const res = new Map();
        return arr.filter((arr) => !res.has(arr.id) && res.set(arr.id, 1));
       },

    这样就很简单的去重了

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持IIS7站长之家。