Js判断数组中是否存在某个元素「建议收藏」

Js判断数组中是否存在某个元素「建议收藏」方法一:indexOf(item,start);Item:要查找的值;start:可选的整数参数,缺省则从起始位子开始查找。indexOf();返回元素在数组中的位置,如果没有则返回-1;例子:vararr=[‘aaa’,’bbb’,’ccc’,’ddd’,’eee’];  vara=arr.indexOf(‘ddd’);  console.log(a);  //3  varb=arr.indexOf(‘d’);  console.log(b);  //-1  我通常的用法:if(

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

Jetbrains全系列IDE稳定放心使用

方法一: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

转至博客:https://www.cnblogs.com/minxl/p/10115040.html

这里是一个真诚的***青年技术交流QQ群:761374713***,不管你是大学生、社畜、想学习变成的其他人员,欢迎大家加入我们,一起成长,一起进步,真诚的欢迎你,不管是技术,还是人生,还是学习方法。有道无术,术亦可求,有术无道,止于术。在这里插入图片描述

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/180293.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • android开发之AIDL用法_进程间通信原理详解

    转自http://blog.csdn.net/saintswordsman/article/details/5130947欢迎阅读本文,你能关注本文,你知道你需要进程间通信、需要AIDL(以及Binder),那么可以默认你对这些概念已经有了一些了解,你(大致)知道它们是什么,它们有什么用,所以为了节约大家的眼力和时间,在此我不复制粘贴网上泛滥的博客或者翻译冗长的android文档。

  • ora 01017问题解决办法

    ora 01017问题解决办法SQL>startup ORACLEinstancestarted. TotalSystemGlobalArea 914358272bytes FixedSize                 2088184bytes VariableSize            528483080bytes DatabaseBuffers         3774873…

  • SpringBoot的序列化和反序列化

    SpringBoot的序列化和反序列化序列化与反序列化1、认识序列化与反序列化Java序列化是指把Java对象转换为字节序列的过程,而Java反序列化是指把字节序列恢复为Java对象的过程。2、为什么要实现对象的序列化和反序列化?(1)我们创建的Java对象被存储在Java堆中,当程序运行结束后,这些对象会被JVM回收。但在现实的应用中,可能会要求在程序运行结束之后还能读取这些对象,并在以后检索数据,这时就需要用到序列化。(2)当Java对象通过网络进行传输的时候。因为数据只能够以二进制的形式在网络中进行传输,因此当把对象通过网络发送

  • origin双y轴柱状图_双Y轴柱状图和折线图

    origin双y轴柱状图_双Y轴柱状图和折线图Origin双Y轴柱状图画法及两柱重合有间居问题解决1、所遇问题2、作图方法1、所遇问题做双Y轴柱状图时,一开始是将左Y轴数据和右Y轴数据放在了两个sheet中,一顿操作最后发现两个柱要么重合要么有间距,怎么调都不行,就像下图这样。。。2、作图方法正确作图方法:1、将X数据左Y数据以及右Y数据放在一个sheet中,主要这里边的两个空列,是正确画图的关键。2、选择ABCD四列画柱状图,注意这里C列为误差,画出来图你就明白D列作用是让柱子向左偏一格。3、点击空白区域,右键加入右Y轴,也

  • typescript教程阮一峰_在博图里怎样定义一个变量

    typescript教程阮一峰_在博图里怎样定义一个变量在TypeScript项目中像PHP一样使用魔术变量

  • 《剑指offer》– 第一个只出现一次的字符、数组中只出现一次的数字、字符流中第一个不重复的字符、数组中重复的数字

    《剑指offer》– 第一个只出现一次的字符、数组中只出现一次的数字、字符流中第一个不重复的字符、数组中重复的数字

发表回复

您的电子邮箱地址不会被公开。

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