位置: 编程技术 - 正文

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

  • 什么是减免税额90%
  • 一般纳税人收到普票可以抵扣吗
  • 银行转账支付凭证有效期多久
  • 租赁企业可以开具电费发票吗
  • 股东分红按利润表的净利润计算
  • 销项发票导出格式不对怎么办
  • 销售退款怎么做分录
  • 音乐茶座取什么名字好呢
  • 增值税怎样报税
  • 银行付款退汇怎么做账
  • 项目所在地怎么填
  • 出纳去银行
  • 公司借给个人的款项会计分录
  • 佣金可以直接转到个人账户吗
  • 增值税专用发票可以开电子发票吗
  • 代扣代缴税种有几个
  • 没建账的个体户如何交个人所得税?
  • 所得税税负率是多少
  • 劳务费可以开吗
  • 外商投资企业税务优惠
  • 将商业承兑汇票进行贴现 符有追索权的会计分录
  • 基金公司管理费收入增值税
  • 买新车抵旧车
  • 增值税普通发票有什么用
  • 贴现扣的钱叫什么
  • 收到投资款怎么做记账凭证
  • 私募股权基金税收主要涉及的是什么税收问题
  • docker 使用教程
  • 子公司可以接总公司的工程吗
  • 太超过了
  • 营改增项目
  • 专项贷款损失准备金在一定程度上具有资本的性质
  • 最早能玩游戏的人
  • 秋日里通往卢浮宫的杜乐丽花园,法国巴黎 (© Brian A. Jackson/Getty Images Plus)
  • 格里戈里耶奈尔尤伯夫
  • vue 响应式自适应布局
  • 人工智能agi
  • ajax跨域请求的原理是什么
  • 财产赔偿账务处理办法
  • 公司管理费一般占多少个点
  • 研发支出什么时候转管理费用
  • 新法典离职
  • 小规模发票跨月冲红怎么做账
  • 临过期产品
  • 贴现手续费计入哪个明细科目
  • mongodb 数据文件
  • 河南巩义黄河治理项目土方工程有哪些
  • mysql常见故障
  • 自助餐怎么核算成本
  • 物流辅助服务费属于什么费用
  • 车保险里面的车船税
  • 异价调拨什么意思
  • 开出银行承兑汇票
  • 产品检验费怎样计算
  • 增值税专用发票怎么开
  • 购买材料没开票怎么做账
  • 存根联明细怎么申报
  • 去年未开票收入未申报
  • 无形资产摊销费怎么算
  • win7共享在哪
  • win8.1怎么关机快捷键
  • 进程dwm
  • 重装win7旗舰版重启后黑屏
  • win8怎么设置用户头像
  • windows7更新补丁后蓝屏
  • unity shader lod
  • istio源码解析
  • cocos2djs
  • Python中str is not callable问题详解及解决办法
  • shell python
  • 关于草丛:单局游戏内
  • jquery的实现原理
  • python怎么用命令行
  • 如何查询自己公司的对公账号
  • 海南省地方税务局关于土地增值税清算有关问题的通知
  • 佛山市地方税务局与国家税务局合并没有
  • 重庆市低保查询电话
  • 山东居民养老金是多少
  • 办公厅机构设置方案
  • 许昌祥和小区二手房出售
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设