vue中数组如何去除重复数据

寻技术 VUE 2023年10月29日 155

今天小编给大家分享一下vue中数组如何去除重复数据的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

一、使用set结构去重

set是ES6中的一种数据结构,可以去除重复元素,其特征为无序且不重复,经常用于数组去重的场景。

let arr = [1, 2, 2, 3, 3, 4, 5];
let set = new Set(arr);
arr = Array.from(set);

上面的代码中,我们首先定义了一个数组arr,然后通过new Set()方法将其转换为set集合,并将结果保存到set变量中。最后,我们再将set集合转换成数组。

二、使用indexOf方法去重

indexOf方法可以在数组中找到一个给定元素的第一个索引,如果没有找到就返回 -1,所以我们可以利用这个特性来进行数组去重。

let arr = [1, 2, 2, 3, 3, 4, 5];
let newArr = [];
for (let i = 0; i < arr.length; i++) {
  if (newArr.indexOf(arr[i]) === -1) {
    newArr.push(arr[i]);
  }
}
arr = newArr;

上面的代码中,我们通过for循环遍历原始数组arr,在每次遍历时,使用indexOf方法查找当前元素在新数组newArr中的索引。如果没有找到索引,就将该元素添加到newArr中。

三、使用includes方法去重

includes方法是ES7的一个新方法,判断一个数组中是否包含一个指定的值,返回 true 或 false。我们可以根据这个特性来进行去重操作。

let arr = [1, 2, 2, 3, 3, 4, 5];
let newArr = [];
for (let i = 0; i < arr.length; i++) {
  if (!newArr.includes(arr[i])) {
    newArr.push(arr[i]);
  }
}
arr = newArr;

上面的代码中,我们使用for循环遍历原始数组arr,在每次遍历时,使用includes方法判断当前元素是否在新数组newArr中,如果不存在,就将该元素添加到newArr中。

关闭

用微信“扫一扫”