js判断数组中是否存在某个元素(四种方法)[通俗易懂]

js判断数组中是否存在某个元素(四种方法)[通俗易懂]法一:利用indexOf不存在返回-1,存在返回第一次出现的索引//js检查数组中是否包含某个元素//法一indexOfvararr=[100,20,50,58,6,69,36,45,78,66,45]if(arr.indexOf(66)==-1){console.log(“不存在”)}else{console.log(“存在,索引是:”,arr.indexOf(6.

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

法一:利用indexOf 

不存在返回-1,存在返回第一次出现的索引

      // js检查数组中是否包含某个元素
      // 法一 indexOf
      var arr = [100,20,50,58,6,69,36,45,78,66,45]
      if(arr.indexOf(66)==-1){
            console.log("不存在")
      }else{
            console.log("存在,索引是:",arr.indexOf(66))
      }

js判断数组中是否存在某个元素(四种方法)[通俗易懂]

 法二:利用find

它的参数是一个回调函数,所有数组元素依次遍历该回调函数,直到找出第一个返回值为true的元素,然后返回该元素,否则返回undefined。

      var arr = [100,20,50,58,6,69,36,45,78,66,45]
      arr.find(function(value,index,arr){
            if(value==45){
                  console.log("存在",index)    
            }
      })
      console.log(param)

查找45,find会找出所有存在的45以及索引

js判断数组中是否存在某个元素(四种方法)[通俗易懂]

 法三:利用some

some方法同样用于检测是否有满足条件的元素,如果有,则不继续检索后面的元素,直接返回true,如果都不符合,则返回一个false。

用法与find相似,只是find是返回满足条件的元素,some返回的是一个Boolean值,从语义化来说,是否包含返回布尔值更贴切

      let arr = [100,20,50,58,6,69,36,45,78,66,45]
      // some
      let result = arr.some(ele => ele === 45) //true
      if (result) {
      //do something...
      };
      console.log(result)

js判断数组中是否存在某个元素(四种方法)[通俗易懂]

法四:includes 

ES6新增的数组方法,用于检测数组是否包含某个元素,如果包含返回true,否则返回false,比较厉害的是,能直接检测NaN:

优点 就不用说了,最简单的做法没有之一,不用回调,不用复杂的写法,一个方法直接搞定。

缺点 是低版本浏览器支持不是很友好

      let arr = [100,20,50,58,6,69,36,45,78,66,45,NaN]
      // 法四
      let flag = arr.includes(1100)
      let flag1 = arr.includes(NaN)

      console.log(flag,flag1)

js判断数组中是否存在某个元素(四种方法)[通俗易懂]

 推荐使用includes()方法,方便快捷,一步到位~

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/180323.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 人工智能猴子摘香蕉代码_猴子妈妈有14个香蕉

    人工智能猴子摘香蕉代码_猴子妈妈有14个香蕉只有简单的状态显示#include"iostream"usingnamespacestd;voidAT(charmonkeyplace,charboxplace){cout<<"AT(monkey,"<<monkeyplace<<")"<<endl;cout<&

    2022年9月26日
    5
  • jenkins自定义构建参数_git怎么切换分支

    jenkins自定义构建参数_git怎么切换分支前言当我们的自动化项目越来越多的时候,在代码仓库会提交不同的分支来管理,在用jenkins来构建的时候,我们希望能通过参数化构建git仓库的分支。下载安装GitParameter插件系统管理-

    2022年7月31日
    62
  • qlineedit自动补全_qlineedit只能输入数字

    qlineedit自动补全_qlineedit只能输入数字转载:http://www.cnblogs.com/csuftzzk/p/qss_lineedit_completer.html?utm_source=tuicool&utm_medium=referral显示密码显示密码时,利用lineedit-password-character属性更改密文显示字符内容。QLineEdit[echoMode=”2″]{lineedit…

    2022年10月5日
    3
  • webstorm的永久激活码2021【2021.8最新】

    (webstorm的永久激活码2021)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月26日
    252
  • QQ空间照片提取_怎么获取QQ的url

    QQ空间照片提取_怎么获取QQ的url对于搞前端开发的人来说,获取qq空间图片的url可谓是轻而易举的事情,我想到的方法有:1.进入qq空间,然后查看网页源代码,然后搜索一下qq号码,然后就知道组装形式了。2.进入qq空间,然后直接F12,然后根据qq空间图像定位到对应的代码处,直接看到组装形式。3.直接对着图片右击,然后复制图片url,哈哈,更简单。

    2022年8月10日
    4
  • Java Integer 与 int 深刻理解

    Java Integer 与 int 深刻理解Java Integer 与 int 深刻理解

    2022年4月24日
    48

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号