JavaScript 数组去重详解


Posted in Javascript onSeptember 15, 2021

1.数组去重

/**********************************************
         ?description:
        ?作者: 麒麟社
        ?时间: 2021-09-13 22:26:21
        ?名称: V1.0.5
        ***********************************************/
        var obj = ['麒麟','社','CC','DD','麒麟','社','11',11]
            //定义一个新的数组
            var s = [];
            //遍历数组
            for(var i=0;i<obj.length;i++){
            if(s.indexOf(obj[i]) == -1){  //判断在s数组中是否存在,不存在则push到s数组中
                s.push(obj[i]);
             }
            }
        console.log(s);

JavaScript 数组去重详解

2.数组去重里面的对象去重

/**********************************************
         ?description:
         ?作者: 麒麟社
         ?时间: 2021-09-13 22:26:21
         ?名称: V1.0.5
        ***********************************************/
        var old_data = [
            { name:'ccc', age:'18' },
            { name:'peng', age:'18' }, //去除peng重复
            { name:'aaa', age:'18' },
            { name:'peng', age:'18' },
          ]
          //  方法1:利用对象访问属性的方法,判断对象中是否存在key
          var result = [];
          var obj = {};
          old_data.forEach(function (data) {
          if(!obj[data.name]){
          result.push(data);
          obj[data.name] = true;
            }
          })
          console.log(result);

JavaScript 数组去重详解

3.根据数组某个字段相同,修改另外字段值

/**********************************************
        ?description:
        ?作者: 麒麟社
        ?时间: 2021-09-13 22:26:21
        ?名称: V1.0.5
        ***********************************************/
        var oldData = [
            { name:'cccc', age:'5656' },
            { name:'cccc', age:'22dddsada' },
            { name:'cccc', age:'22dddsada' },
            { name:'aaaa', age:'32' },
            { name:'aaaa', age:'2dasdasdas2' },
          ]
          var newArr = [];
          for (var i = 0; i <oldData.length; i++) {
          var item = oldData[i];
          var isExists = false;
          for (var j = 0; j < newArr.length; j++) {
          var item2 = newArr[j];
          if (item2.name == item.name) {
          isExists = true;
          break;
                }
            }
          if (isExists) {
          // 这里找到相同的,更改一样的
          if(item.name == 'cccc'){
          item.age = '222222'
          item2.age = '222222'
                }else{
          item.age = '3333'
          item2.age = '3333'
                }
          newArr.push(item2);
          continue;
            }
          newArr.push(item);
          }
          console.log(newArr)

JavaScript 数组去重详解

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注三水点靠木的更多内容!

Javascript 相关文章推荐
兼容IE和FF的图片上传前预览js代码
May 28 Javascript
带左右箭头图片轮播的JS代码
Dec 18 Javascript
js获取滚动距离的方法
May 30 Javascript
jQuery满意度星级评价插件特效代码分享
Aug 19 Javascript
详解JavaScript模块化开发
Dec 04 Javascript
如何解决hover在ie6中的兼容性问题
Dec 15 Javascript
关于Stream和Buffer的相互转换详解
Jul 26 Javascript
详解Javascript 中的 class、构造函数、工厂函数
Dec 20 Javascript
layui table设置前台过滤转义等方法
Aug 17 Javascript
js中async函数结合promise的小案例浅析
Apr 14 Javascript
JS实现给数组对象排序的方法分析
Jun 24 Javascript
微信小程序HTTP请求从0到1封装
Sep 09 Javascript
5种方法告诉你如何使JavaScript 代码库更干净
Sep 15 #Javascript
JavaScript小技巧带你提升你的代码技能
Sep 15 #Javascript
javascript函数式编程基础
Sep 15 #Javascript
15个值得收藏的JavaScript函数
Sep 15 #Javascript
详解JavaScript中Arguments对象用途
详细谈谈JavaScript中循环之间的差异
Aug 23 #Javascript
javascript代码简写的几种常用方式汇总
Aug 23 #Javascript
You might like
php分页函数
2006/07/08 PHP
php使用memcoder将视频转成mp4格式的方法
2015/03/12 PHP
实例说明js脚本语言和php脚本语言的区别
2019/04/04 PHP
深入学习微信网址链接解封的防封原理visit_type
2019/08/15 PHP
JsEasy简介 JsEasy是什么?与下载
2007/03/07 Javascript
使用原生js封装webapp滑动效果(惯性滑动、滑动回弹)
2014/05/06 Javascript
原生JavaScript实现合并多个数组示例
2014/09/21 Javascript
js网页右下角提示框实例
2014/10/14 Javascript
浅谈类似于(function(){}).call()的js语句
2015/03/30 Javascript
创建你的第一个AngularJS应用的方法
2015/06/16 Javascript
jQuery EasyUI Dialog拖不下来如何解决
2015/09/28 Javascript
JSON与String互转的实现方法(Javascript)
2016/09/27 Javascript
nodejs中向HTTP响应传送进程的输出
2017/03/19 NodeJs
完美解决浏览器跨域的几种方法(汇总)
2017/05/08 Javascript
Angular4.0中引入laydate.js日期插件的方法教程
2017/12/25 Javascript
在js代码拼接dom对象到页面上的模板总结
2018/10/21 Javascript
你或许不知道的一些npm实用技巧
2019/07/04 Javascript
基于mpvue的简单弹窗组件mptoast使用详解
2019/08/02 Javascript
layer弹出层显示在top顶层的方法
2019/09/11 Javascript
利用Python批量提取Win10锁屏壁纸实战教程
2018/03/27 Python
python-str,list,set间的转换实例
2018/06/27 Python
python随机生成大小写字母数字混合密码(仅20行代码)
2020/02/01 Python
python实现梯度下降法
2020/03/24 Python
解决paramiko执行命令超时的问题
2020/04/16 Python
Flask模板引擎Jinja2使用实例
2020/04/23 Python
解决python运行效率不高的问题
2020/07/20 Python
Alpine安装Python3依赖出现的问题及解决方法
2020/12/25 Python
丝芙兰美国官网:SEPHORA美国
2016/08/03 全球购物
给老婆大人的检讨书
2014/02/24 职场文书
实习报告评语
2014/04/26 职场文书
体育课外活动总结
2014/07/08 职场文书
2014小学教师个人工作总结
2014/11/10 职场文书
运动会闭幕式致辞
2015/07/29 职场文书
2016年大学生暑假爱心支教活动策划书
2015/11/26 职场文书
解决golang结构体tag编译错误的问题
2021/05/02 Golang
Python中time标准库的使用教程
2022/04/13 Python