首页 > web前端 > 前端问答 > javascript怎么查找指定数组元素是否存在

javascript怎么查找指定数组元素是否存在

青灯夜游
发布: 2022-10-12 17:13:37
原创
17670 人浏览过

4种方法:1、用includes()检测,语法“数组.includes(元素值)”;2、用some()检测,语法“function f(v) {if (v===值) {return true;}}var b= 数组.some(f);”;3、用indexOf()检测,语法“数组.indexOf(值)”;4、用lastIndexOf(),语法“数组.lastIndexOf(值)”。

javascript怎么查找指定数组元素是否存在

本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

方法1:利用数组的includes() 方法

 includes() 方法用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false。

arr.includes(searchElement [, fromIndex])
登录后复制
  • searchElement 必须。需要查找的元素值。

  • fromIndex 可选。从该索引处开始查找 searchElement。如果为负值,则按升序从 array.length fromIndex 的索引开始搜索。默认为 0。

示例:判断fruits数组中是否包含给定元素“榴莲”

var fruits = ['苹果',"香蕉", '榴莲', '橘子', '菠萝蜜',"梨子"];
if(fruits.includes('榴莲')){
	console.log("给定元素是存在的");
}else{
	console.log("给定元素是不存在的");
}
登录后复制

1.png

方法2:利用数组的some()方法

some()方法可以检测数组中是否存在符合条件的元素。换个角度思考,也可以用来检测数组中的所有元素是否都不符合指定条件,都不符合的话就返回 false,有一个或者多个符合的话就返回 true。

array.every(function callbackfn(Value,index,array),thisValue)
登录后复制
参数描述
function(currentValue, index,arr)必须。函数,数组中的每个元素都会执行这个函数
函数参数:
参数描述currentValue必须。当前元素的值index可选。当前元素的索引值arr可选。当前元素属于的数组对象
thisValue可选。对象作为该执行回调时使用,传递给函数,用作 "this" 的值。
如果省略了 thisValue ,"this" 的值为 "undefined"

返回值:布尔值。如果数组中有元素满足条件返回 true,否则返回 false。

示例:

function f(value, index, ar) {
    if (value === '橘子') {
        return true;
    }
}
var fruits = ['苹果',"香蕉", '榴莲', '橘子', '菠萝蜜',"梨子"];
var b = fruits.some(f);
if (b) {
   console.log("给定元素是存在的");
} else {
   console.log("给定元素是不存在的");
}
登录后复制

输出结果为:

3.png

方法3:利用数组的indexOf()方法

indexOf() 方法可返回数组中某个指定元素的第一次出现位置。如果要检索的元素没有出现,则该方法返回 -1。

array.indexOf(item,start)
登录后复制
参数描述
item必须。查找的元素。
start可选的整数参数。规定在数组中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的首字符开始检索。

实现思想:利用该方法检查指定值在数组的第一次出现位置,如果位置是存在的,则包含该给定元素。如果返回-1,则不包含该给定元素。

下面给出实现代码:

var fruits = ['苹果',"香蕉", '榴莲', '橘子', '菠萝蜜',"梨子"];
var b = fruits.indexOf("桃子");
if (b>0) {
   console.log("给定元素是存在的");
} else {
   console.log("给定元素是不存在的");
}
登录后复制

输出结果为:

4.png

方法4:利用数组的lastIndexOf()方法

lastIndexOf()方法可搜索数组中的元素,并返回它最后出现的位置。如果要检索的元素没有出现,则该方法返回 -1。

array.lastIndexOf(item,start)
登录后复制
参数描述
item必需。规定需检索的字符串值。
start可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的最后一个字符处开始检索。

实现思想:利用该方法检查指定值在数组的最后出现位置,如果位置是存在的,则包含该给定元素;如果返回-1,则不包含该给定元素。

下面给出实现代码::

var fruits = ['苹果',"香蕉", '榴莲', '橘子', '菠萝蜜',"梨子"];
var b = fruits.lastIndexOf("葡萄");
if (b>0) {
   console.log("给定元素是存在的");
} else {
   console.log("给定元素是不存在的");
}
登录后复制

输出结果为:

5.png

【相关推荐:javascript视频教程编程视频

以上是javascript怎么查找指定数组元素是否存在的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板