码迷,mamicode.com
首页 > 编程语言 > 详细

数组去重的12种方法4-对象属性

时间:2020-11-17 12:19:33      阅读:5      评论:0      收藏:0      [点我收藏+]

标签:rgba   没有   接收   数组去重   alert   ret   color   一个   turn   

利用对象的属性不能相同的特点进行去重:

var b = Array.from(acbacebgjfab)  //通过Array.from方法定义一个新的数组
    function uniq(arry){
      if(!Array.isArray(arry)){   //先判断传入的数据是不是数组类型
        return alert(传入数据类型错误!)
      }
      var newArray=[];  //定义一个新的数组,用来接收去重后的值
      var obj = {}  //定义一个新的对象,利用对象属性名不能重复,来判断值是否重复
      for(let i=0;i<arry.length;i++){
        if(!obj[arry[i]]){  //如果对象中没有这项属性名,说明值没有重复
          newArray.push(arry[i])  // 将没有重复的值push到新的数组当中去
          obj[arry[i]]=1  //给对象中属性名为arry[i]赋值,表示第一次出现
          // console.log(obj[arry[i]])
        }else{
          obj[arry[i]]++  // 如果在对象中出现,只需要给对象中这一项的次数+1
          // console.log(obj[arry[i]])
        }
      }
      console.log(obj);
      return newArray
    }
    console.log(uniq(b));

 

数组去重的12种方法4-对象属性

标签:rgba   没有   接收   数组去重   alert   ret   color   一个   turn   

原文地址:https://www.cnblogs.com/UnfetteredMan/p/13958056.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!