JavaScript数组去重是一个常见的任务,它可以帮助我们简化数组,减少冗余,提高程序的效率。下面介绍几种常见的去重方法:
1、使用ES6新增的Set数据结构,它可以帮助我们快速去重:
let arr = [1,1,2,2,3,3,4,4]; let newArr = Array.from(new Set(arr)); console.log(newArr); // [1,2,3,4]
2、使用Array.prototype.filter()方法,可以过滤掉重复的元素:
let arr = [1,1,2,2,3,3,4,4]; let newArr = arr.filter((item,index,arr) => { return arr.indexOf(item) === index; }); console.log(newArr); // [1,2,3,4]
3、使用for循环和indexOf()方法,可以实现去重:
let arr = [1,1,2,2,3,3,4,4]; let newArr = []; for(let i = 0; i < arr.length; i++){ if(newArr.indexOf(arr[i]) === -1){ newArr.push(arr[i]); } } console.log(newArr); // [1,2,3,4]
4、使用Array.prototype.reduce()方法,可以实现去重:
let arr = [1,1,2,2,3,3,4,4]; let newArr = arr.reduce((prev,cur) => { return prev.includes(cur) ? prev : [...prev,cur]; },[]); console.log(newArr); // [1,2,3,4]
5、使用Object对象,可以实现去重:
let arr = [1,1,2,2,3,3,4,4]; let obj = {}; let newArr = arr.reduce((prev,cur) => { obj[cur] ? "" : obj[cur] = true && prev.push(cur); return prev; },[]); console.log(newArr); // [1,2,3,4]
以上就是JavaScript数组去重的几种常见方法,通过这些方法可以轻松实现数组去重,减少冗余,提高程序的效率。