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 相关文章推荐
分享27款非常棒的jQuery 表单插件
Mar 28 Javascript
取消选中单选框radio的三种方式示例介绍
Dec 23 Javascript
TypeError document.getElementById(...) is null错误原因
May 18 Javascript
jQuery 3.0 的 setter和getter 模式详解
Jul 11 Javascript
AngularJS 指令详细介绍
Jul 27 Javascript
JS实现改变HTML上文字颜色和内容的方法
Dec 30 Javascript
JavaScript限定范围拖拽及自定义滚动条应用(3)
May 17 Javascript
详解angularJS自定义指令间的相互交互
Jul 05 Javascript
vue采用EventBus实现跨组件通信及注意事项小结
Jun 14 Javascript
jQuery中常用动画效果函数知识点整理
Aug 19 jQuery
浅谈React碰到v-if
Nov 04 Javascript
jQuery实现经典的网页3D轮播图封装功能【附源码下载】
Feb 15 jQuery
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下防止单引号,双引号在接受页面转义的设置方法
2008/09/25 PHP
PHP中call_user_func_array()函数的用法演示
2012/02/05 PHP
Thinkphp模板中使用自定义函数的方法
2012/09/23 PHP
解析在PHP中使用全局变量的几种方法
2013/06/24 PHP
深入解析php中的foreach函数
2013/08/31 PHP
PHP中魔术变量__METHOD__与__FUNCTION__的区别
2014/09/29 PHP
谈谈 PHP7新增功能
2015/12/16 PHP
在php的yii2框架中整合hbase库的方法
2018/09/20 PHP
PHP实现无限极分类的两种方式示例【递归和引用方式】
2019/03/25 PHP
JavaScript实现简单图片滚动附源码下载
2014/06/17 Javascript
推荐10个2014年最佳的jQuery视频插件
2014/11/12 Javascript
深入分析Javascript跨域问题
2015/04/17 Javascript
vue.js入门教程之绑定class和style样式
2016/09/02 Javascript
bootstrap tooltips在 angularJS中的使用方法
2019/04/10 Javascript
简单了解JavaScript异步
2019/05/23 Javascript
详解Vue项目引入CreateJS的方法(亲测可用)
2019/05/30 Javascript
Layui实现带查询条件的分页
2019/07/27 Javascript
jQuery pager.js 插件动态分页功能实例分析
2019/08/02 jQuery
微信小程序如何连接Java后台
2019/08/08 Javascript
ionic3双击返回退出应用的方法
2019/09/17 Javascript
JS实现烟花爆炸效果
2020/03/10 Javascript
[02:52]2014DOTA2西雅图国际邀请赛 CIS战队巡礼
2014/07/07 DOTA
[01:19]DOTA2城市挑战赛报名开始 开启你的城市传奇
2018/03/23 DOTA
[01:00:52]2018DOTA2亚洲邀请赛 4.4 淘汰赛 EG vs LGD 第一场
2018/04/05 DOTA
python获取当前目录路径和上级路径的实例
2018/04/26 Python
Django框架验证码用法实例分析
2019/05/10 Python
Django视图类型总结
2021/02/17 Python
用HTML5 实现橡皮擦的涂抹效果的教程
2015/05/11 HTML / CSS
新加坡一家在线男士皮具品牌:Faire Leather Co.
2019/12/01 全球购物
优纳科技软件测试面试题
2012/05/15 面试题
大学本科毕业生的自我鉴定范文
2013/11/19 职场文书
学校交通安全责任书
2014/08/25 职场文书
知识就是力量演讲稿
2014/09/13 职场文书
红色电影观后感
2015/06/18 职场文书
七一慰问简报
2015/07/20 职场文书
聊聊SpringBoot自动装配的魔力
2021/11/17 Java/Android