位置: 编程技术 - 正文

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例题)

  • 电子税务局能不能申报个税
  • 房产企业季度预测
  • 办税人是纳税人吗
  • 赔偿支出需要纳税调整吗
  • 教育行业主营业务内容
  • 社保免征还需要申报吗
  • 非税收入专用申报表
  • 会计凭证前面放什么
  • 商业企业销售的产品
  • 出口货物保险免税
  • 销售库存商品计入什么科目
  • 企业购买小轿车进项税额可以抵扣吗
  • 企业发放工资时,可能涉及的会计科目有
  • 电商销售进对公账户怎样做账
  • 天猫运费险是按照每一单结算的吗
  • 向员工发放用餐费的通知
  • 交纳经营所得的个税怎么做分录?
  • 四级主任科员是什么级别待遇
  • 增值税电子发票没有发票专用章
  • 重分类不成功
  • 红冲发票后 库存怎么处理
  • 担保贷款造成的损失可以税前扣除吗?
  • 主营业务成本的二级科目有哪些
  • 公司补缴印花税怎么申报
  • 总公司中标分公司签约
  • 继承和赠与算夫妻共同财产吗
  • linux系统中的文件访问权限包括几种
  • 发代扣代缴手续费个税免
  • PHP:Memcached::add()的用法_Memcached类
  • 何为职工
  • 城市里创业
  • 无形资产的摊销计入什么科目
  • 天堂之路歌曲
  • vue路由跳转原理
  • php读取txt文件内容
  • 行政事业单位招待费比例
  • 股权转让有溢价分录怎么写
  • 小规模纳税人是否可以开专票
  • 兰斯洛特
  • Ubuntu VPS中wordpress网站打开时提示”建立数据库连接错误”的解决办法
  • 委托第三方收款合法吗
  • 所得税年度报表申报完怎么打印
  • 可变现净值属于会计计量属性吗
  • 公允价值变动损益在利润表哪里
  • 个人所得税表格怎么做
  • SqlServer2012中First_Value函数简单分析
  • 平行结转分步法各步骤的费用
  • 未经加工的
  • 增资协议书范本合同
  • 可转债公允价值变动计入
  • 企业项目贷款所需资料
  • 管理费用是负数影响利润表吗
  • 会务费可以抵扣进项税额吗
  • 主营业务成本做多了怎么办
  • 工程担保属于什么
  • 会计入职新公司
  • 打印机取消打印在哪里
  • mac的safari浏览器无法打开
  • win10电脑无权限访问文件怎么解除
  • win7虚拟内存怎么设置
  • windows10预览版是什么
  • ubuntu operation not permitted
  • aliwssv.exe是什么进程
  • pqhelper.exe是什么进程 pqhelper进程查询
  • win10预览体验三个选项
  • 电脑主板驱动
  • win10如何安装office
  • #pragma UNROLL 4
  • js里写css
  • cocos2dx 3.0 quick lua transition action
  • 简介怎么写
  • dos常用命令详细讲解
  • windows安装python pip
  • 在Debian(Raspberry Pi)树莓派上安装NodeJS的教程详解
  • js闭包作用问题解决应用
  • python如何运用
  • 个人开个什么公司比较好
  • 山西国家税务总局官网
  • 北京市朝阳区地图
  • 税额差怎么计算
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设