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 相关文章推荐
ExtJS 学习专题(一) 如何应用ExtJS(附实例)
Mar 11 Javascript
JQuery live函数
Dec 24 Javascript
JS的Document属性和方法小结
Sep 17 Javascript
js购物车实现思路及代码(个人感觉不错)
Dec 23 Javascript
jQuery实现点击水纹波动动画
Apr 10 Javascript
Vue.js创建Calendar日历效果
Nov 03 Javascript
RGB和YUV 多媒体编程基础详细介绍
Nov 04 Javascript
React Native第三方平台分享的实例(Android,IOS双平台)
Aug 04 Javascript
Vue结合SignalR实现前后端实时消息同步
Sep 19 Javascript
微信小程序实现YDUI的ScrollNav组件
Feb 02 Javascript
浅谈JS的原型和继承
May 08 Javascript
Vue管理系统前端之组件拆分封装详解
Aug 23 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 eval函数使用介绍
2013/12/08 PHP
常见php数据文件缓存类汇总
2014/12/05 PHP
PHP+Ajax异步带进度条上传文件实例
2016/11/01 PHP
Javascript模板技术
2007/04/27 Javascript
js 鼠标拖动对象 可让任何div实现拖动效果
2009/11/09 Javascript
解决jquery的datepicker的本地化以及Today问题
2012/05/23 Javascript
js实现鼠标悬停图片上时滚动文字说明的方法
2015/02/17 Javascript
Javascript writable特性介绍
2015/02/27 Javascript
Jquery实现鼠标移动放大图片功能实例
2015/03/25 Javascript
javascript实现获取服务器时间
2015/05/19 Javascript
JavaScript实现文字跟随鼠标特效
2015/08/06 Javascript
理解和运用JavaScript的闭包机制
2015/08/13 Javascript
javascript回到顶部特效
2016/07/30 Javascript
jquery处理checkbox(复选框)是否被选中实例代码
2017/06/12 jQuery
收藏AngularJS中最重要的核心功能
2017/07/09 Javascript
webpack下实现动态引入文件方法
2018/02/22 Javascript
详释JavaScript执行环境与执行栈
2019/04/02 Javascript
vue 获取到数据但却渲染不到页面上的解决方法
2020/11/19 Vue.js
Python统计文件中去重后uuid个数的方法
2015/07/30 Python
浅谈python之高阶函数和匿名函数
2019/03/21 Python
详解Python中正则匹配TAB及空格的小技巧
2019/07/26 Python
django之静态文件 django 2.0 在网页中显示图片的例子
2019/07/28 Python
pycharm配置当鼠标悬停时快速提示方法参数
2019/07/31 Python
用Python批量把文件复制到另一个文件夹的实现方法
2019/08/16 Python
python使用正则来处理各种匹配问题
2019/12/22 Python
Clarks鞋法国官方网站:英国其乐鞋品牌
2018/02/11 全球购物
送货司机岗位职责
2013/12/11 职场文书
中层干部竞聘演讲稿
2014/05/15 职场文书
大学英语专业求职信
2014/06/21 职场文书
2014年公务员退休工资改革方案
2014/10/01 职场文书
高校教师个人工作总结2014
2014/12/17 职场文书
2015年药品销售工作总结范文
2015/05/25 职场文书
交通安全温馨提示语
2015/07/14 职场文书
2016年班主任新年寄语
2015/08/18 职场文书
干部外出学习心得体会
2016/01/18 职场文书
解决springboot druid数据库连接失败后一直重连的方法
2022/04/19 Java/Android