广告
返回顶部
首页 > 资讯 > 前端开发 > node.js >javascript数组去重如何实现
  • 628
分享到

javascript数组去重如何实现

javascript 2022-10-19 09:10:51 628人浏览 泡泡鱼
摘要

这篇文章主要为大家展示了“javascript数组去重如何实现”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“javascript数组去重如何实现”这篇文章吧。

这篇文章主要为大家展示了“javascript数组去重如何实现”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“javascript数组去重如何实现”这篇文章吧。

方法:1、利用“[...new Set(arr)]”语句;2、利用“Array.from(new Set(arr))”语句;3、利用filter和indexOf函数;4、利用双重for循环,检查值是否重复,如果有重复就使用push()删除。

教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

方法1:[…new Set(arr)]

const arr = [1, 2, 3, 2, 3];
[...new Set(arr)]; // [1, 2, 3]

方法2:Array.from(new Set(arr))

const arr = [1, 2, 3, 2, 3];
Array.from(new Set(arr)); // [1, 2, 3]

由于 Set 中的元素是唯一的,无论是原始值或者是对象引用,所以可以通过将数组转换成 Set 对象来实现去重

Array.from方法可以将 Set 对象转换成数组。

方法3:利用filter+ indexOf

function unique(arr) {
  return arr.filter(function(item, index, arr) {
    //当前元素,在原始数组中的第一个索引==当前索引值,否则返回当前元素
    return arr.indexOf(item, 0) === index;
  });
}
var arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,'NaN', 0, 0, 'a', 'a',{},{}];
console.log(unique(arr))
//[1, "true", true, 15, false, undefined, null, "NaN", 0, "a", {…}, {…}]

方法4:双重 for 循环

最容易理解的方法,外层循环遍历元素,内层循环检查是否重复

当有重复值的时候,可以使用 push(),也可以使用 splice()

function distinct(a, b) {
    let arr = a.concat(b);
    for (let i=0, len=arr.length; i<len; i++) {
        for (let j=i+1; j<len; j++) {
            if (arr[i] == arr[j]) {
                arr.splice(j, 1);
                // splice 会改变数组长度,所以要将数组长度 len 和下标 j 减一
                len--;
                j--;
            }
        }
    }
    return arr
}

但这种方法占用的内存较高,效率也是最低的

javascript数组去重如何实现

方法5:for...of + includes()

双重for循环的升级版,外层用 for...of 语句替换 for 循环,把内层循环改为 includes()

先创建一个空数组,当 includes() 返回 false 的时候,就将该元素 push 到空数组中

类似的,还可以用 indexOf() 来替代 includes()

function distinct(a, b) {
    let arr = a.concat(b)
    let result = []
    for (let i of arr) {
        !result.includes(i) && result.push(i)
    }
    return result
}

javascript数组去重如何实现

以上是“javascript数组去重如何实现”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网node.js频道!

--结束END--

本文标题: javascript数组去重如何实现

本文链接: https://www.lsjlt.com/news/80486.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • javascript数组去重如何实现
    这篇文章主要为大家展示了“javascript数组去重如何实现”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“javascript数组去重如何实现”这篇文章吧。 ...
    99+
    2022-10-19
    javascript
  • JavaScript怎么实现数组去重
    这篇“JavaScript怎么实现数组去重”文章,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要参考一下,对于“JavaScript怎么实现数组去重”,小编整理了以下知识点,请大家跟着小编的步伐一步一步的慢慢理解,接...
    99+
    2023-06-06
  • Javascript怎样实现数组去重
    这篇文章将为大家详细讲解有关Javascript怎样实现数组去重,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。数组去重1、from()叠加new Set()方法字符串或数值型数组的去重可以直接使用from...
    99+
    2023-06-17
  • JavaScript数组如何去重
    本文小编为大家详细介绍“JavaScript数组如何去重”,内容详细,步骤清晰,细节处理妥当,希望这篇“JavaScript数组如何去重”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识...
    99+
    2022-10-19
    javascript
  • JavaScript如何利用hasOwnProperty实现数组去重
    这篇文章主要介绍JavaScript如何利用hasOwnProperty实现数组去重,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!利用hasOwnPropertyfunction unique(arr)&n...
    99+
    2023-06-17
  • JavaScript如何利用includes实现数组去重
    这篇文章主要为大家展示了“JavaScript如何利用includes实现数组去重”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JavaScript如何利用includes实现数组去重”这篇文章...
    99+
    2023-06-03
  • JavaScript中怎么实现数组去重
    这篇文章主要介绍了JavaScript中怎么实现数组去重,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。具体如下:数组去重,一般都是在面试的时...
    99+
    2022-10-19
    javascript
  • javascript数组如何去重复
    小编给大家分享一下javascript数组如何去重复,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!javascript数组去重复的方法:1、利用“indexOf(...
    99+
    2023-06-14
  • es6如何实现数组去重
    这篇文章将为大家详细讲解有关es6如何实现数组去重,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 es6数组去重的方法:1、利用Set对象和数...
    99+
    2022-10-19
    es6
  • php如何实现数组去重
    这篇文章主要介绍“php如何实现数组去重”,在日常操作中,相信很多人在php如何实现数组去重问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php如何实现数组去重”的疑惑有所帮助!接下来,请跟着小编一起来学习吧...
    99+
    2023-06-26
  • JS中如何实现数组去重
    这篇文章主要介绍JS中如何实现数组去重,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!操作的数组 let arr=[0,1,23,'1',4,2,8...
    99+
    2022-10-19
    js 数组
  • es6中如何实现数组去重
    这篇“es6中如何实现数组去重”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“es6中如何实...
    99+
    2022-10-19
    es6
  • JavaScript实现数组去重的7种方法
    目录前言方法实现双循环去重indexOf方法去重1indexOf方法去重2相邻元素去重利用对象属性去重set与解构赋值去重Array.from与set去重总结前言 去重是开发中经常会...
    99+
    2022-11-13
    JavaScript 数组去重
  • JavaScript 数组去重详解
    目录1.数组去重2.数组去重里面的对象去重3.根据数组某个字段相同,修改另外字段值总结1.数组去重 var obj = ['麒麟','社','CC'...
    99+
    2022-11-12
    JavaScript 数组 JavaScript数组去重
  • JavaScript数组去重方案
    目录方法一:set :不是一种数据类型,是一种数据结构;成员唯一方法二:对象属性名不能重复方法三:indexOf方法四:sort方法五:includes :包含;如果数组包含那一项,...
    99+
    2022-11-12
    JavaScript数组去重 JavaScript数组
  • 如何使用JS实现数组去重
    这篇文章主要介绍如何使用JS实现数组去重,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体如下:var arr = ['abc',...
    99+
    2022-10-19
    js
  • JS如何实现数组去重复值
    这篇文章主要介绍JS如何实现数组去重复值,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!运行效果图如下:完整实例代码如下:<!DOCTYPE html PUB...
    99+
    2022-10-19
    js 数组
  • PHP如何实现二维数组去重
    这篇文章主要介绍PHP如何实现二维数组去重,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!二维数组去重$arr = array(  array('id'=>...
    99+
    2023-06-03
  • es5和es6如何实现数组去重
    这篇文章主要讲解了“es5和es6如何实现数组去重”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“es5和es6如何实现数组去重”吧!es5中可以利用for语句和indexOf()函数来实现数...
    99+
    2023-07-05
  • JavaScript中实现数组去重有哪些方法
    小编给大家分享一下JavaScript中实现数组去重有哪些方法,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!数组去重const arr = [1, ...
    99+
    2022-10-19
    javascript
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作