JS判断数组里是否有重复元素的方法小结


Posted in Javascript onMay 21, 2019

本文实例讲述了JS判断数组里是否有重复元素的方法。分享给大家供大家参考,具体如下:

第一种方法:但是下面的这种方法数字字符串类似相同,返回的还是真,有点不靠谱,如果是其它的字符是可以的

var ary11 = new Array("1", "ff", "11", "aa", "2222");
// 验证重复元素,有重复返回true;否则返回false
function mm(a) {
  return /(\x0f[^\x0f]+)\x0f[\s\S]*\1/.test("\x0f" + a.join("\x0f\x0f") + "\x0f");
}
mm(ary11)
alert(mm(ary11))

第二种方法:但是下面的这种方法数字字符串类似相同,返回的也还是真,有点不靠谱,如果是其它的字符是可以的

var ary = ["1", "ff", "11", "aa", "2222"]
var s = ary.join(",") + ",";
for(var i = 0; i < ary.length; i++) {
  if(s.replace(ary[i] + ",", "").indexOf(ary[i] + ",") > -1) {
    alert("数组中有重复元素:" + ary[i]);
    break;
  }
}

第三种方法:这种方法好像不会有什么问题

var ary = new Array("11", "222", "33", "111", "22");
var nary = ary.sort();
for(var i = 0; i < nary.length - 1; i++) {
  if(nary[i] == nary[i + 1]) {
    alert("重复内容:" + nary[i]);
  }
}

第四种方法:这种方法好像不会有什么问题

var ary = new Array("1111", "222", "33", "111", "22");
alert(isRepeat(ary));
// 验证重复元素,有重复返回true;否则返回false
function isRepeat(arr) {
  var hash = {};
  for(var i in arr) {
    if(hash[arr[i]]) {
      return true;
    }
    // 不存在该元素,则赋值为true,可以赋任意值,相应的修改if判断条件即可
    hash[arr[i]] = true;
  }
  return false;
}
Javascript 相关文章推荐
再谈IE中Flash控件的自动激活 ObjectWrap
Mar 09 Javascript
在jQuery ajax中按钮button和submit的区别分析
Oct 07 Javascript
jquery文档操作wrap()方法实例简述
Jan 10 Javascript
jQuery编程中的一些核心方法简介
Aug 14 Javascript
JavaScript时间操作之年月日星期级联操作
Jan 15 Javascript
js简单设置与使用cookie的方法
Jan 22 Javascript
详解JavaScript对象类型
Jun 16 Javascript
基于jQuery实现咖啡订单管理简单应用
Feb 10 Javascript
Vue.js项目模板搭建图文教程
Sep 20 Javascript
JavaScript引用类型Function实例详解
Aug 09 Javascript
JavaScript实现的联动菜单特效示例
Jul 08 Javascript
vue 组件中使用 transition 和 transition-group实现过渡动画
Jul 09 Javascript
JS计算两个数组的交集、差集、并集、补集(多种实现方式)
May 21 #Javascript
vue路由守卫+登录态管理实例分析
May 21 #Javascript
vue实现跨域的方法分析
May 21 #Javascript
vue动态绑定class的几种常用方式小结
May 21 #Javascript
express启用https使用小记
May 21 #Javascript
使用express获取微信小程序二维码小记
May 21 #Javascript
小程序server请求微信服务器超时的解决方法
May 21 #Javascript
You might like
PHP mysql与mysqli事务使用说明 分享
2013/08/17 PHP
php的debug相关函数用法示例
2016/07/11 PHP
PHP数组式访问接口ArrayAccess用法分析
2017/12/28 PHP
PHP实现将多个文件压缩成zip格式并下载到本地的方法示例
2018/05/23 PHP
风吟的小型JavaScirpt库 (FY.JS).
2010/03/09 Javascript
JavaScript定义类和对象的方法
2014/11/26 Javascript
js生成验证码并直接在前端判断
2015/05/15 Javascript
使用微信内置浏览器点击下拉框出现页面乱跳转现象(iphone),该怎么办
2016/01/04 Javascript
js停止冒泡和阻止浏览器默认行为的简单方法
2016/05/15 Javascript
AngularJS优雅的自定义指令
2016/07/01 Javascript
js每隔两秒输出数组中的一项(实例)
2017/05/28 Javascript
AngularJS实现表单元素值绑定操作示例
2017/10/11 Javascript
使用Electron构建React+Webpack桌面应用的方法
2017/12/15 Javascript
vue使用el-upload上传文件及Feign服务间传递文件的方法
2019/03/15 Javascript
基于AngularJS拖拽插件ngDraggable.js实现拖拽排序功能
2019/04/02 Javascript
vue项目中mock.js的使用及基本用法
2019/05/22 Javascript
详解如何在Javascript和Sass之间共享变量
2019/11/13 Javascript
[01:03]DOTA2新的征程 你的脚印值得踏上
2014/08/13 DOTA
零基础写python爬虫之爬虫框架Scrapy安装配置
2014/11/06 Python
浅谈Python 列表字典赋值的陷阱
2019/01/20 Python
python实现大文本文件分割
2019/07/22 Python
django自定义模板标签过程解析
2019/12/14 Python
浅谈Django中的QueryDict元素为数组的坑
2020/03/31 Python
终于搞懂了Keras中multiloss的对应关系介绍
2020/06/22 Python
Expected conditions模块使用方法汇总代码解析
2020/08/13 Python
一文详述 Python 中的 property 语法
2020/09/01 Python
html5使用canvas实现跟随光标跳动的火焰效果
2014/01/07 HTML / CSS
英国精品买手店:Browns Fashion
2016/09/29 全球购物
Java基础面试题
2012/11/02 面试题
大家访活动实施方案
2014/03/10 职场文书
七夕活动策划方案
2014/08/16 职场文书
2014年个人技术工作总结
2014/12/08 职场文书
酒店总经理岗位职责
2015/04/01 职场文书
2015年教学副校长工作总结
2015/07/22 职场文书
中秋节作文(五年级)之关于月亮
2019/09/11 职场文书
某某店铺的开业庆典主持词范本
2019/11/25 职场文书