Js判断数组中是否存在某个元素

方法一:indexOf(item,start);

  Item:要查找的值;start:可选的整数参数,缺省则从起始位子开始查找。

  indexOf();返回元素在数组中的位置,如果没有则返回-1;

  例子:var arr=['aaa','bbb','ccc','ddd','eee'];

  var a=arr.indexOf('ddd');

  console.log(a);   //3

  var b=arr.indexOf('d');

  console.log(b);  //-1

  我通常的用法:if(arr.indexOf(要查找的元素)>-1){元素存在的操作};

  indexOf()无法查找NaN

方法二:arr.find();

  Arr.find()的参数是一个回调函数,数组所有元素会遍历这个回调函数,直到找到第一个返回值为true的元素,然后返回该元素否则返回undefined;

  var arr=['aaa','bbb','ccc','ddd','eee'];

  var a=arr.find(function(value,index,arr){

    return value=='bbb';

  })

  console.log(a);  //bbb,这里返回的不是true,而是返回值为true的这个元素;

  我通常的用法:

  arr.find(function(value){

    If(value==要查找的值){

      //所做的操作

    }

  })

方法三:array.findIndex();

  findIndex()和find()的用法相似,find()返回的是元素,findIndex返回的是元素的位置。findIndex();返回第一个符合条件的数组元素的位置,如果所有元素都不符合条件则返回-1;findIndex(),数组中的每一个元素都会调用一次函数,但是当条件返回true时,findIndex()返回符合条件的元素的位置,之后的值不会再调用执行函数。

  var arr=['aaa','bbb','ccc','ddd','eee'];

  var a=arr.find(function(value,index,arr){

    return value=='bbb';

  })

  console.log(a);//1,后面的值不会再调用函数。

  说明:findIndex()和find()可以用来查找NaN;

  var arr=['1','2','3',NaN];
  var a=arr.find(function(value){
    return isNaN(value);
  })
  console.log(a);       //NaN

方法四:for()或forEach()

  循环遍历,然后用if判断

方法五:使用jquery的inArray方法,该方法返回元素在数组中的下标,如果不存在与数组中,那么返回-1;

  var arr=['aaa','bbb','ccc','ddd','eee'];

  var a= $.inArray('bbb',arr);

  console.log(a);    //1

Js判断数组中是否存在某个元素的更多相关文章

  1. js判断数组中是否包含某个元素

    参考:http://www.runoob.com/jquery/misc-inarray.html js判断数组中是否包含某个元素 $.inArray( value, array [, fromInd ...

  2. JS判断数组中是否有重复元素的方法

    判断数组中是否有重复元素,最容易想到的方法是使用2重循环,逐个遍历,比较,但是这个是最慢,最笨的方法,百度得出了更好的方法. var ary = new Array("111",& ...

  3. js 判断数组中是否包含某个元素(转载)

    来源:https://www.cnblogs.com/yunshangwuyou/p/10539090.html 方法一:array.indexOf(item,start):元素在数组中的位置,如果没 ...

  4. js判断数组中是否有重复元素

    方法一:正则 var ary = new Array("111","ff","222","aa","222&q ...

  5. js 判断数组中是否包含某个元素

    vuex中结合使用v-if: 链接:https://www.cnblogs.com/hao-1234-1234/p/10980102.html

  6. js判断数组中是不是有某个元素

    function in_array(search,array){ for(var i in array){ if(array[i]==search){ return true; } } return ...

  7. Jquery判断数组中是否包含某个元素$.inArray()的用法

    判断数组里面是否包含某个元素可以使用 $.inArray("元素(字符串)",数组名称) 进行判断 ,当存在该元素(字符串)时,返回该元素在数组的下标,不存在时返回 -1 示例代码 ...

  8. js 判断数组中是否存在

    /* 判断数组中是否存在 var somearray = ["mon", "tue", "wed", "thur"] s ...

  9. js判断数组中是否包含某个值

    /** * 判断数组中是否包含某个值 * @param arr 数组 * @param str 值 * @returns {boolean} */ function contains(arr, str ...

随机推荐

  1. MyScript 开发文档

    一.IInk SDK runtime 1.1 引擎创建 1.2 对象释放 1.3 获取并设置配置 配置 访问配置 配置识别 二.文件存储 2.1 支持的内容的类型 2.2 模型结构 2.3 Conte ...

  2. Redis入门和Java利用jedis操作redis

    Redis入门和Java利用jedis操作redis Redis介绍 Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库. Redis 与其他 key - val ...

  3. Python基础(range)

    arr = [1,2,3,4,5,6,7,8,9] for i in range(0,len(arr),2): print(arr[i],end=' | ') brr = arr[0:len(arr) ...

  4. python实现其它形态学操作

    目录: (一) 顶帽(原图像与开操作图像的差值)(二) 黑帽(原图像与闭操作图像的差值)(三) 形态学梯度  (1)基本梯度(膨胀后的图像与腐蚀后的图像差值)  (2)内部梯度(原图像减去腐蚀后的图像 ...

  5. Node.js实现前后端交换——用户登陆

    最近学习了一点Node.js的后端知识,于是作为一个学习前端方向的我开始了解后端,话不多说,开始介绍.首先,如果你想要更好的理解这篇博客,你需要具备html,css,javascript和Node.j ...

  6. fluidity install on Cluster

    fluidity install on Cluster 1.编译器安装 gcc4.6 openmpi python HOME_PATH= /hpcdata1/xiaozhong/ 1.1.gmp &a ...

  7. PHP 获取两个日期相差多少年,多少月,多少天,多少小时,并填充数组

    PHP 获取两个日期相差多少年,多少月,多少天,多少小时,并填充数组 <?php /** * 获取两个日期相差多少年,多少月,多少天,多少小时,并填充数组 * @param [type] $st ...

  8. NFS FTP SAMBA的区别

    Samba服务 samba是一个网络服务器,用于Linux和Windows之间共享文件. samba端口号 samba (启动时会预设多个端口) 数据传输的TCP端口 139.445 进行NetBIO ...

  9. Redis | 第10章 二进制数组、慢查询日志和监视器《Redis设计与实现》

    目录 前言 1. 二进制位数组 1.1 位数组的表示 1.2 GETBIT 命令的实现 1.3 SETBIT 命令的实现 1.4 BITECOUNT 命令的实现 1.5 BITOP 命令的实现 2. ...

  10. linux系统中安装MySQL

    linux系统中安装MySQL 检查原来linux系统中安装的版本 rpm -qa | grep mysql 将其卸载掉 以 mysql-libs-5.1.71-1.el6.x86_64 版本为例 r ...