JavaScript 数组去重详解

 更新时间:2021年09月14日 16:20:51   作者:麒麟社  
下面小编就为大家带来一篇JavaScript数组去重的几方法推荐。小编觉得听错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看

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);

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);

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)

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

相关文章

  • electron 引入node服务的操作方法

    electron 引入node服务的操作方法

    这篇文章主要介绍了electron 引入node服务的操作方法,引入node服务很简单,直接在electron的主体中引入就可以了,对electron 引入node服务感兴趣的朋友一起看看吧
    2024-03-03
  • JavaScript中颜色模型的基础知识与应用详解

    JavaScript中颜色模型的基础知识与应用详解

    颜色模型,是用来表示颜色的数学模型。比如最常见的 RGB模型,使用 红绿蓝 三色来表示颜色。本文就来和大家讲讲JavaScript中颜色模型的基础知识与应用吧
    2023-02-02
  • JavaScript中如何判断一个值是否为Null

    JavaScript中如何判断一个值是否为Null

    我们在开发的时候经常会判断一个null值,那么我们该如何去判断呢?下面这篇文章主要给大家介绍了关于JavaScript中如何判断一个值是否为Null的相关资料,需要的朋友可以参考下
    2023-12-12
  • 如何动态加载外部Javascript文件

    如何动态加载外部Javascript文件

    这篇文章主要介绍了如何动态加载外部Javascript文件,本文举例讲解使用js加载器动态加载外部Javascript文件,感兴趣的小伙伴们可以参考一下
    2015-12-12
  • JavaScript新功能介绍之findLast()和findLastIndex()

    JavaScript新功能介绍之findLast()和findLastIndex()

    最近工作中遇到了一个关于查找数组里面的目标元素的方法,所以下面这篇文章主要给大家介绍了关于JavaScript新功能之findLast() 和findLastIndex()的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-04-04
  • Three.js+React制作3D梦中海岛效果

    Three.js+React制作3D梦中海岛效果

    深居内陆的人们,大概每个人都有过大海之梦吧。本文使用React+Three.js技术栈,实现3D海洋和岛屿,感兴趣的小伙伴可以跟随小编一起学习一下
    2022-05-05
  • 轻松掌握JavaScript状态模式

    轻松掌握JavaScript状态模式

    这篇文章主要帮助大家轻松掌握JavaScript状态模式,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • 前端实现Excel文件导出功能的完整代码解析(vue实现excel文件导出)

    前端实现Excel文件导出功能的完整代码解析(vue实现excel文件导出)

    在Vue中实现导出Excel文件有多种方式,可以通过前端实现,也可以通过前后端配合实现,下面这篇文章主要给大家介绍了关于前端实现Excel文件导出功能(vue实现excel文件导出)的相关资料,需要的朋友可以参考下
    2024-05-05
  • js脚本实现数据去重

    js脚本实现数据去重

    最近在一个项目中,需要去除掉重复的数据,之前都是在后台实现,现在客户需求是在前台去重,于是就想到了javascript脚本。
    2014-11-11
  • JavaScript中const、var和let区别浅析

    JavaScript中const、var和let区别浅析

    在JavaScript中有三种声明变量的方式:var、let、const。但是有朋友不清楚这三种声明变量的区别,下面脚本之家小编给大家详细介绍下js中const、var和let的区别,感兴趣的朋友一起看看吧
    2016-10-10

最新评论