位置: 编程技术 - 正文

js数组去重的5种算法实现(js 数组去重的四种方法)

编辑:rootadmin

推荐整理分享js数组去重的5种算法实现(js 数组去重的四种方法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:js实现数组去重的算法,js中数组去重常用方法,js数组去重indexof,js中数组去重复的方法有哪些,js数组去重最优解法,js中数组去重复的方法有哪些,js中数组去重复的方法有哪些,js数组去重最优解法,内容如对您有帮助,希望把文章链接给更多的朋友!

1.遍历数组法最简单的去重方法,实现思路:新建一新数组,遍历传入数组,值不在新数组就加入该新数组中;注意点:判断值是否在数组的方法“indexOf”是ECMAScript5 方法,IE8以下不支持,需多写一些兼容低版本浏览器代码,源码如下:

js数组去重的5种算法实现(js 数组去重的四种方法)

2.对象键值对法该方法执行的速度比其他任何方法都快, 就是占用的内存大一些,实现思路:新建一js对象以及新数组,遍历传入数组时,判断值是否为js对象的键,不是的话给对象新增该键并放入新数组。注意 点: 判断是否为js对象键时,会自动对传入的键执行“toString()”,不同的键可能会被误认为一样;例如: a[1]、a["1"] 。解决上述问题还是得调用“indexOf”。

3.数组下标判断法还是得调用“indexOf”性能跟方法1差不多,实现思路:如果当前数组的第i项在当前数组中第一次出现的位置不是i,那么表示第i项是重复的,忽略掉。否则存入结果数组。

4.排序后相邻去除法 虽然原生数组的”sort”方法排序结果不怎么靠谱,但在不注重顺序的去重里该缺点毫无影响。实现思路:给传入数组排序,排序后相同值相邻,然后遍历时新数组只加入不与前一值重复的值。

5.优化遍历数组法该方法的实现代码相当酷炫,实现思路:获取没重复的最右一值放入新数组。(检测到有重复值时终止当前循环同时进入顶层循环的下一轮判断)推荐

判断浏览器是否支持indexOf ,indexOf 为ecmaScript5新方法 IE8以下(包括IE8, IE8只支持部分ecma5)不支持

标签: js 数组去重的四种方法

本文链接地址:https://www.jiuchutong.com/biancheng/382720.html 转载请保留说明!

上一篇:解决js图片加载时出现404的问题(js如何实现图片懒加载)

下一篇:基于JavaScript实现移动端点击图片查看大图点击大图隐藏(javascript例题)

  • 分公司上交总公司营业款如何记账
  • 增值税属于哪个部门
  • 差旅费抵扣进项税政策201939号文件
  • 一般纳税人金税盘全额抵扣分录
  • 合营企业和联营企业会计核算
  • 小规模纳税人的起征点是多少
  • 什么叫备品备件
  • 长期待摊费用摊销计入什么会计科目
  • 招拍挂方式取得土地,应该取得土地后立项
  • 通过应交税费核算的
  • 典当业销售的死当物品是否交增值税
  • 无形资产出售收入属于营业收入吗
  • 企业自建房屋建几层合适
  • 企业如何处理劳方与资方的关系
  • 广告服务印花税怎么交
  • 小企业会计准则科目
  • 应纳税所得额是开票金额吗
  • 薪酬费用属于什么科目
  • 出口货物免抵退申报明细录入怎么填
  • 滴滴打车怎么整
  • 公司注销报表怎么调
  • 票据结算包括哪几项
  • 现金日记账有哪几种
  • 个人车辆租给公司有什么后果
  • 付款凭证怎么填写电脑
  • 有关预收账款的说法正确的是
  • 委托加工物资如何转入生产成本
  • php验证码扭曲效果怎么做
  • 长期股权投资的账面价值怎么计算
  • 信托融资放在哪个科目
  • 增值税专用发票丢了怎么补救
  • 运输费计税吗
  • 房地产企业季度所得税预缴扣除附加税吗
  • ldconfig命令怎么用
  • vue数据加载完成显示页面过渡动画
  • php源码破解
  • discuz怎么添加diy模块
  • 企业接受捐赠要交增值税
  • 增值税专用发票电子版
  • 在什么情况下要切除子宫
  • access使用查询向导固定常数
  • 公司车辆保险费要交印花税吗
  • 非营利组织免征企业所得税的通知
  • 财务报表年报应怎么做
  • 营业外支出的内容包括
  • 个税申报中本人扣除比例什么意思
  • 填制和审核会计凭证,可以监督各项经济业务的合法
  • 获取sqlsession
  • 增值税纳税申报实训报告
  • 置换他行按揭贷款
  • 给天猫开的服务怎么关闭
  • 汇款汇给别人了应该怎么办
  • 应收票据备查簿的作用
  • 企业管理理费包括哪些
  • 存货质押融资的公司有哪些
  • 收到货款确认收入还是开好发票确认收入
  • 注册资本未到位注销公司处理
  • 公司购买银行理财产品怎么做账
  • 车辆保险费计入现金流量表哪里
  • 弥补以前年度亏损怎么算
  • 预付款项为什么属于资产
  • mysql中数据类型为是否
  • 在window7
  • kernel32在哪个文件夹
  • 防止linux断电系统崩溃
  • linux系统中在给定文件中查找与设定条件
  • cocos2dx CardinalSpline和CatmullRom算法
  • 非常漂亮的英文怎么说
  • 谷歌批量下载插件
  • shell脚本入门详解
  • js怎么使用
  • shell脚本windows
  • centos6升级到centos8
  • unity3d功能介绍
  • js基于什么
  • python程序讲解
  • 江苏国家税务机关电话
  • 税控盘服务费必须每年交吗为什么
  • 住房公积金交纳的原则
  • 免税关口
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设