千锋教育-做有情怀、有良心、有品质的职业教育机构

400-811-9990
手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

上海
  • 北京
  • 郑州
  • 武汉
  • 成都
  • 西安
  • 沈阳
  • 广州
  • 南京
  • 深圳
  • 大连
  • 青岛
  • 杭州
  • 重庆
当前位置:重庆千锋IT培训  >  技术干货  >  1分钟了解js中数组中去除重复值的几种方法

1分钟了解js中数组中去除重复值的几种方法

来源:千锋教育
发布人:lxl
时间: 2023-06-07 10:01:50

  JavaScript 中数组去重是常见的操作,常用的几种方法如下:

  双重循环法

  这是一种简单直白的方法,对于每一个元素都遍历一遍数组,判断该元素是否重复,若重复则去掉。

function unique(arr) {
var len = arr.length;
for (var i = 0; i < len; i++) {
for (var j = i + 1; j < len; j++) {
if (arr[i] == arr[j]) {
arr.splice(j, 1);
len--;
j--;
}
}
}
return arr;
}

   使用 ES6 Set

  Set 是 ES6 版本新增的数据结构,它不允许存在重复的元素,可以很方便的去重。将数组转为 Set 对象后,再将其转回数组。

function unique(arr) {
return Array.from(new Set(arr));
}

   使用 indexOf

  这种方法是利用 indexOf 判断数组中是否存在该元素,若存在则添加到新的数组中,若不存在则不变,最后返回新的数组。

function unique(arr) {
var newArr = [];
for (var i = 0; i < arr.length; i++) {
if (newArr.indexOf(arr[i]) == -1) {
newArr.push(arr[i]);
}
}
return newArr;
}

   使用 includes

  这种方法是 ES7 中新增的方法,类似于 indexOf,判断数组中是否存在该元素,若存在则添加到新的数组中,若不存在则不变,最后返回新的数组。

function unique(arr) {
var newArr = [];
for (var i = 0; i < arr.length; i++) {
if (!newArr.includes(arr[i])) {
newArr.push(arr[i]);
}
}
return newArr;
}

   以上是常见的几种数组去重方法,因为每种方法都有其优缺点,需要根据实际情况进行选择。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

软件设计模式分类有哪些分类?

2023-06-01

如何实现Spring+SpringMVC+MyBatis框架整合

2023-05-31

如何进行mysql数据备份?

2023-05-30

最新文章NEW

什么是servlet的生命周期?servlet请求处理流程是怎样的?

2023-05-30

在java中,super关键字怎样使用

2023-05-29

什么是JavaScript伪数组?

2023-05-25

相关推荐HOT

更多>>

快速通道 更多>>

最新开班信息 更多>>

网友热搜 更多>>