酷代码 AI
菜单
服务商

作为javascript开发,简述javascript数组怎么去重有哪些?(方法) ?

1. 使用 Set 数据结构 Set 是 ES6 中新增的数据结构,它可以存储任何类型的唯一值(注意:Set 中的值都是唯一的,没有重复的值)。 ```javascript let arr = [1, 2, 3, 2, 4, 3, 5]; let uniqueArr = [...new Set(arr)]; console.log(uniqueArr); // [1, 2, 3, 4, 5] ``` 2. 使用 filter 方法 filter 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。 ```javascript let arr = [1, 2, 3, 2, 4, 3, 5]; let uniqueArr = arr.filter((item, index) => arr.indexOf(item) === index); console.log(uniqueArr); // [1, 2, 3, 4, 5] ``` 3. 使用 reduce 方法 reduce 方法对数组中的每个元素执行一个由您提供的reducer函数(升序执行),将其结果汇总为单个返回值。 ```javascript let arr = [1, 2, 3, 2, 4, 3, 5]; let uniqueArr = arr.reduce((prev, cur) => prev.includes(cur) ? prev : [...prev, cur], []); console.log(uniqueArr); // [1, 2, 3, 4, 5] ``` 4. 使用 indexOf 方法 利用数组的 indexOf 方法,如果数组中包含重复元素,则返回第一次出现的位置,否则返回 -1。 ```javascript let arr = [1, 2, 3, 2, 4, 3, 5]; let uniqueArr = arr.filter(item => arr.indexOf(item) === arr.lastIndexOf(item)); console.log(uniqueArr); // [1, 2, 3, 4, 5] ``` 5. 使用双重循环 使用双重循环,外层循环遍历数组,内层循环遍历已去重的数组,如果有相同的元素,则删除。 ```javascript let arr = [1, 2, 3, 2, 4, 3, 5]; let uniqueArr = []; for(let i = 0; i < arr.length; i++) { let isExist = false; for(let j = 0; j < uniqueArr.length; j++) { if(uniqueArr[j] === arr[i]) { isExist = true; break; } } if(!isExist) { uniqueArr.push(arr[i]); } } console.log(uniqueArr); // [1, 2, 3, 4, 5] ``` [2023-11-09 01:46:54 | AI写代码神器 | 566点数解答]

相关提问
请收藏新域名:pdcd.cn
发财导航,免费问AI
实用工具查看更多
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]
数独游戏 [娱乐类]
经典推箱子 [娱乐类]
AI摸鱼五子棋 [娱乐类]