javascript数组去重

知识点:
1. indexOf() 返回某个指定的字符串值在字符串中首次出现的位置,若是没有找到返回-1。须要注意的是**区分大小写**javascript

"Blue Whale".indexOf("Blue"); // returns 0
"Blue Whale".indexOf("blue") // returns -1
"Blue Whale".indexOf("Whale", 5); // returns 5 

2. push() 向数组的末尾添加一个或多个元素,并返回新的长度。须要注意的是**新元素将添加在数组的末尾**,而且此方法**改变数组的长度**。java

具体实现以下es6

var arr = ['abc','abcd',333,'sss','2','d',111,'t','2','ss','f','22','d',111];
//建立一个新数组
var arr_1=[];
//遍历数组
for(var i=0;i<arr.length;i++) {
if (arr_1.indexOf(arr[i]) == -1) {
arr_1.push(arr[i]); //判断在arr_1数组中是否存在,不存在则push到arr_1数组中
}
}
console.log(arr_1); //输出结果["abc", "abcd", 333, "sss", "2", "d", 111, "t", "ss", "f", "22"]

3. 还能够用es6新增的Set来实现,Set是一种数据结构,它和数组很是类似,可是成员的值都是惟一的。咱们能够先把它转化成Set,再配合...解构运算符从新转化为数组,达到去重的目的。数组

具体实现以下数据结构

const arr = [1, 1, 2, 2, 3, 4, 5, 5];
const arr_1 = [...new Set(arr)];
console.log(arr_1); // 输出[1, 2, 3, 4, 5]
相关文章
相关标签/搜索