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 相关文章推荐
JavaScript 函数调用规则
Sep 14 Javascript
JQuery跨Iframe选择实现代码
Aug 19 Javascript
使用原生js实现页面蒙灰(mask)效果示例代码
Jun 20 Javascript
JavaScript获取Url里的参数
Dec 18 Javascript
快速学习jQuery插件 Cookie插件使用方法
Dec 01 Javascript
JavaScript 中有关数组对象的方法(详解)
Aug 15 Javascript
jQuery Ajax Post 回调函数不执行问题的解决方法
Aug 15 Javascript
Sortable.js拖拽排序使用方法解析
Nov 04 Javascript
JavaScript获取ul中li个数的方法
Feb 13 Javascript
浅谈微信JS-SDK 微信分享接口开发(介绍版)
Aug 15 Javascript
JavaScript数据结构之栈实例用法
Jan 18 Javascript
JavaScript实现网页动态生成表格
Nov 25 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
curl实现站外采集的方法和技巧
2014/01/31 PHP
php中的filesystem文件系统函数介绍及使用示例
2014/02/13 PHP
php中Y2K38的漏洞解决方法实例分析
2014/09/22 PHP
PhpStorm 如何优雅的调试Hyperf的方法步骤
2019/11/24 PHP
Javascript 类与静态类的实现(续)
2010/04/02 Javascript
浅谈javascript中自定义模版
2015/01/29 Javascript
jQuery Validate表单验证入门学习
2015/12/18 Javascript
原生js实现移动端瀑布流式代码示例
2015/12/18 Javascript
谷歌showModalDialog()方法不兼容出现对话窗口的解决办法
2016/02/15 Javascript
基于Bootstrap实现Material Design风格表单插件 附源码下载
2016/04/18 Javascript
在网页中插入百度地图的步骤详解
2016/12/02 Javascript
vue.js 实现图片本地预览 裁剪 压缩 上传功能
2018/03/01 Javascript
基于JavaScript实现单例模式
2019/10/30 Javascript
three.js 将图片马赛克化的示例代码
2020/07/31 Javascript
使用原生javascript开发计算器实例代码
2021/02/21 Javascript
[01:02:07]Liquid vs Newbee 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
Python中的迭代器漫谈
2015/02/03 Python
Python中使用第三方库xlrd来读取Excel示例
2015/04/05 Python
Python3 操作符重载方法示例
2017/11/23 Python
Python字符串拼接六种方法介绍
2017/12/18 Python
Python三种遍历文件目录的方法实例代码
2018/01/19 Python
python文本数据相似度的度量
2018/03/12 Python
分分钟入门python语言
2018/03/20 Python
对python中Librosa的mfcc步骤详解
2019/01/09 Python
pyqt5之将textBrowser的内容写入txt文档的方法
2019/06/21 Python
使用matlab或python将txt文件转为excel表格
2019/11/01 Python
python logging通过json文件配置的步骤
2020/04/27 Python
Python自定义聚合函数merge与transform区别详解
2020/05/26 Python
HTML5组件Canvas实现图像灰度化(步骤+实例效果)
2013/04/22 HTML / CSS
Sephora丝芙兰菲律宾官方网站:购买化妆品和护肤品
2017/04/05 全球购物
瑞典的玛丽小姐:Miss Mary of Sweden
2019/02/13 全球购物
报社实习生自荐信
2014/01/24 职场文书
班主任班级寄语大全
2014/04/04 职场文书
初中军训感想
2015/08/07 职场文书
中秋节随笔
2015/08/15 职场文书
Java Kafka 消费积压监控的示例代码
2021/07/01 Java/Android