`
freshflower
  • 浏览: 186820 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

JavaScript检查数组是否有重复元素

 
阅读更多

我们知道JavaScript中的数组有个indexOf方法, 来查找元素第一次出现的位置, 所以我们可以利用这一点,来检查数组是否有重复元素, 我们可以对数组的方法进行一个扩展, 如下:

//检查数组是否有重复元素, 如果没有返回-1,有则返回重复元素的起始位置
Array.prototype.checkRepeat = function () 
{
      var index = -1;
      for (var i = 0; i < this.length; i++) {
          if (this.indexOf(this[i], i + 1) >= 0) {
              index = i; break;
           }
       }
       return index;
}

 

调用示例:

var arr = [1, 2,3,4,5, 2, 22];
console.log(arr.checkRepeat());  
//输出结果:1  (因为只有2有重复的,且2的初始位置是1)

 

 

分享到:
评论

相关推荐

    javascript如何判断数组内元素是否重复的方法集锦

     比如有这么一组数组,里面放了20个18位的身份证号码 要判断里面的身份证号码是否有重复 如何快速判断? 代码如下:var ary = new Array(“111″,”22″,”33″,”111”); var s = ary.join(“,”)+”,”; ...

    javascript检查某个元素在数组中的索引值

    在现在代浏览器中判断一个元素在不在一个数组中,咱们可以用Array对象的indexOf()方法来取得这个元素在当前数组中的索引值,若索引值不等于-1,数组中就存在这个元素, 例如: var arr = [2,53,23,'test',9,'array'...

    JavaScript检查数据中是否存在相同的元素(两种方法)

    这里是两个用于数组中查找重复元素的demo,可以看看啦 &lt;!DOCTYPE html&gt; &lt;html lang="en"&gt; &lt;head&gt; &lt;meta charset="UTF-8"&gt; &lt;title&gt;Title&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &...

    JavaScript经典实例

     5.7创建一个新数组作为已有数组的子集  5.8在数组中搜索  5.9将一个多维数组扁平化  5.10搜索和删除或替换数组元素  5.11对每个数组元素应用一个函数  5.12对数组中的每个元素执行一个函数并返回一个新数组 ...

    JavaScript详解(第2版)

    1.10.3 浏览器是否已启用JavaScript 16 1.11 JavaScript代码放在哪儿 17 1.12 验证标签 20 1.12.1 W3C验证工具 21 1.12.2 Validome验证工具 21 1.13 应知应会 22 练习 23 第2章 脚本的安装 24 2.1 ...

    JavaScript基础教程第8版

    《JavaScript基础教程(第8版)》循序渐进地讲述了JavaScript及相关的CSS、DOM、Ajax、jQuery等技术。书中从JavaScript语言基础开始,分别讨论了图像、框架、浏览器窗口、表单、正则表达式、用户事件和cookie,并在上...

    怎样使你的 JavaScript 代码简单易读(推荐)

    最后检查新数组中是否存在该值,如果不存在,则添加它。 function removeDuplicates(arr) { const uniqueVals = []; arr.forEach((value,index) =&gt; { if(uniqueVals.indexOf(value) === -1) { uniqueVals.push...

    程序天下:JavaScript实例自学手册

    16.4 验证列表框中的值是否重复 16.5 检测输入框的统一方法 16.6 Email的验证 16.7 不使用正则验证IP地址 16.8 IP地址输入框 16.9 判断变量是否已经定义 16.10 判断方法是否已经定义 16.11 表单验证样式(一) 16.12...

    《程序天下:JavaScript实例自学手册》光盘源码

    16.4 验证列表框中的值是否重复 16.5 检测输入框的统一方法 16.6 Email的验证 16.7 不使用正则验证IP地址 16.8 IP地址输入框 16.9 判断变量是否已经定义 16.10 判断方法是否已经定义 16.11 表单验证样式(一) 16.12...

    utils:我JavaScript实用程序

    它们由简单的操作组成,例如将字符串转换为camelCase,检查数组中是否存在元素等。 最好的检查方法是查看文件夹中的测试文件。流利的API 我努力编写可读的代码,但我对将自己的助手与内置方法结合起来感到不满意。 ...

    leetcode第321题-javascript-tavascript:技术面试数据结构与算法练习题

    如何从数组中删除重复元素? 从驼峰式字符串中查找单词数。 Example: Input: myNameIs Output: 3 给定两个字符串删除所有字符以使其成为字谜 实践指数: anyString = 'Brave new world' 从头开始的第一个 o 的索引 ...

    jQuery响应式宽屏图片3D旋转切换特效.zip

    JavaScript 使有规律地重复的HTML文段简化,减少下载时间。JavaScript 能及时响应用户的操作,对提交表单做即时的检查,无需浪费时间交由 CGI 验证。JavaScript 的特点是无穷无尽的,只要你有创意。

    JavaScript网页特效范例宝典源码

    实例086 检查表单元素是否为空 134 实例087 验证E-mail是否正确 135 实例088 通过正则表达式验证电话号码 137 实例089 验证输入的字符串是否为汉字 139 实例090 验证身份证号码 140 实例091 验证用户名和密码 142 ...

    java贪吃蛇源码-Interview-Stuff:面试问题、答案、Java、Python、数据库、Web、Javascript

    捕集雨水勾股三重巧克力分布问题股票买卖左侧较小右侧较大的元素将数组转换为Zig-Zag方式查找已排序数组中出现一次的元素流中第K大的元素相对排序螺旋遍历矩阵的元素排序由频率最大数组成的数组 由 0 和 1 组成的...

    Data-Structures-and-Algorithms-in-[removed]用JavaScript实现的数据结构和算法

    重复排列在二叉搜索树中搜索有效字谜从二进制链接列表中获取十进制值通过2个步骤爬楼梯的方法数量找到斐波那契数列买卖股票的最佳时间组字谜32位整数的反向数字删除链接列表元素从适当位置的数组中删除元素将零移动...

    js-algorithms:使用javascript解析算法的存储库

    给定一个n个元素重复的数组,请删除重复的数据并返回新数组。 以下是一些测试案例: console . log ( deleteDuplicate ( [ 1 , 2 , 3 , 4 , 4 , 5 , 4 , 3 , 2 , 1 , 67 , 4 , 3 ] ) ) &gt; [ 1 , 2 , 3 , 4 , 5 , 67 ...

    HW-Unit03

    局限性:该解决方案有一个主要局限性:每个元素都以相同的模式添加(第一个特殊字符,然后是小写字母,然后是数字元素,然后是大写字母)并重复其自身限制的解决方案:为了解决该局限性,使用了随机函数,其中字符串...

    30s-code:30scode学习笔记

    hasDuplicates:检查平面副本中是否有重复的值 pullBy:根据给定的继承器函数,修改原始数组以过滤指定的值 unzipWith:创建元素细分,将zip生成的副本中的元素解分组,并应用提供的函数 JSONtoCSV:将对象拆分转换...

Global site tag (gtag.js) - Google Analytics