下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第七种JS实现数组去重的方式注意:以上去方式对NaN和undefined类型去重也是有效的,是因为NaN和undefined都可以被存储在Set中,NaN之间被视为相同的值(尽管在js中:NaN!==NaN)。
2.利用两层循环+数组的splice方法
通过两层循环对数组元素进行逐一比较,然后通过splice方法来删除重复的元素。此方法对NaN是无法进行去重的,因为进行比较时NaN!==NaN。
functionremoveDuplicate(arr){
letlen=arr.length
for(leti=0;ilen;i++){
for(letj=i+1;jlen;j++){
if(arr[i]===arr[j]){
arr.splice(j,1)
len--//减少循环次数提高性能
j--//保证j的值自加后不变
returnarr
constresult=removeDuplicate(arr)
console.log(result)//[1,2,'abc',true,false,undefined,NaN,NaN]
3.利用数组的indexOf方法
新建一个空数组,遍历需要去重的数组,将数组元素存入新数组中,存放前判断数组中是否已经含有当前元素,没有则存入。此方法也无法对NaN去重。
indexOf()方法:返回调用它的String对象中第一次出现的指定值的索引,从fromIndex处进行搜索。如果未找到该值,则返回-1。
functionremoveDuplicate(arr){
constnewArr=[]
arr.forEach(item={
if(newArr.indexOf(item)===-1){
newArr.push(item)
returnnewArr//返回一个新数组
constresult=removeDuplicate(arr)
console.log(result)//[1,2,'abc',true,false,undefined,NaN,NaN]
4.利用数组的includes方法
此方法逻辑与indexOf方法去重异曲同工,只是用includes方法来判断是否包含重复元素。
includes()方法:用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回true,否则返回false。
functionremoveDuplicate(arr){
constnewArr=[]
arr.forEach(item={
if(!newArr.includes(item)){
newArr.push(item)
returnnewArr
constresult=removeDuplicate(arr)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 山东省东平实验中学2027届九上化学期中质量检测模拟试题含解析
- 2027届上海市长宁、金山区九年级物理第一学期期末调研试题含解析
- 2027届黑龙江省大庆市杜尔伯特县九上化学期末考试试题含解析
- 北京首都师范大第二附属中学2027届化学九上期末质量检测模拟试题含解析
- 江苏省苏州市姑苏区2027届九上化学期末统考试题含解析
- 江苏省泰兴市老叶初级中学2027届化学九上期末质量检测试题含解析
- 2027届江苏省盐城市滨海县九上物理期末综合测试试题含解析
- 2027届河北省石家庄市裕华区第四十中学化学九年级第一学期期中监测试题含解析
- 2026西安建筑科技大学附属中学招聘高中英语教师考前冲刺试卷带答案详解(考试直接用)
- 2026广西玉林市福绵区直属机关后勤服务中心招聘见习生2人考前冲刺密卷含完整答案详解(必刷)
- 头晕的诊断及治疗
- JB-T 14580-2023 滚动轴承 商用车轮毂轴承及单元
- 集装箱场站安全管理制度范本
- 制冰机安全操作规程
- 风电场道路及平台施工方案
- 景观生态学Chapter6景观格局分析
- GB/T 4968-2008火灾分类
- 发展经济学 马工程课件 13.第十三章 技术进步与创新
- GB/T 19816.5-2005涂覆涂料前钢材表面处理喷射清理用金属磨料的试验方法第5部分:缺陷颗粒百分比和微结构的测定
- GB/T 14846-2014铝及铝合金挤压型材尺寸偏差
- 2023年新疆国际陆港(集团)有限责任公司招聘笔试题库及答案解析
评论
0/150
提交评论