es6怎么判断是否在数组里

青灯夜游
发布: 2023-01-16 17:35:23
原创
3791人浏览过
判断方法:1、使用includes()函数,可判断数组是否包含一个指定的值,语法“arr.includes(值)”,如果返回true则存在;2、使用find()函数,可查找符合添加的第一个元素,语法“arr.find(function(v){if(v==值{...}})”;3、使用some()函数,语法“arr.some(i=>i===值)”,如果返回true则存在。

es6怎么判断是否在数组里

本教程操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。

es6判断指定值是否在数组里的方法

在es6中,可以利用includes()、find()、some()方法来判断元素是否在数组中。

方法1:使用includes()方法

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

array.includes(searchElement, fromIndex);
登录后复制
  • searchElement:要查找的元素;

  • fromIndex:开始查找的索引位置。

示例:

arr = [1,2,3,4,5]
console.log(arr.includes(5));
登录后复制

1.png

可以看到,返回值为true,则表示元素5在数组中。

方法2:使用find()方法

find() 方法返回通过测试(函数内判断)的数组的第一个元素的值。

find() 方法为数组中的每个元素都调用一次函数执行:

  • 当数组中的元素在测试条件时返回 true 时, find() 返回符合条件的元素,之后的值不会再调用执行函数。

  • 如果没有符合条件的元素返回 undefined

示例:

var arr = [1,2,3,4,5]
arr.find(function(value){
	if(value==5){
		console.log("指定元素在数组中");
	}
})
登录后复制

2.png

方法3:使用some()方法

some() 方法用来检测数组中是否存在符合指定条件的元素,存在就返回 true,不存在就返回 false。

arr = [1,2,3,4,5];
let istrue= arr.some(item => item === 45);
console.log(istrue);
登录后复制

3.png

可以看到,返回值为false,则表示元素不在数组中。

扩展知识:es5判断指定值是否在数组里的方法

在es5中,可以利用indexOf()和lastIndexOf()函数来判断元素是否在数组中。

indexOf() 和 lastIndexOf() 方法可以检索数组元素,返回指定元素的索引位置;如果指定元素不存在,则返回“-1”。

1、使用 indexOf() 在数组中查找元素

indexOf() 返回某个元素值在数组中的第 1 个匹配项的索引,如果没有找到指定的值,则返回 -1。用法如下:

array.indexOf(item,start)
登录后复制
  • item    必须。查找的元素。    

  • start    可选的整数参数。规定在数组中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的首字符开始检索。    

indexOf() 方法是按升序索引执行搜索,即从左到右进行检索。检索时,会让数组元素与 searchElement参数值进行全等比较===。

示例:查找元素是否在数组中

var arr = ["ab","cd","ef","ab","cd"];
var str="cd";
if(arr.indexOf(str)===-1){
	console.log("指定元素:"+str+" 不在数组中");
}else{
	console.log("指定元素: "+str+" 在数组中");
}
登录后复制

1.png

修改一下需要查找的值:

var str="gh";
if(arr.indexOf(str)===-1){
	console.log("指定元素:"+str+" 不在数组中");
}else{
	console.log("指定元素: "+str+" 在数组中");
}
登录后复制

2.png

2、使用 lastIndexOf() 在数组中查找元素

indexOf() 返回某个元素值在数组中的最后 1 个匹配项的索引,如果没有找到指定的值,则返回 -1。其用法与 indexOf() 相同。

示例:查找元素是否在数组中

var arr = ["ab","cd","ef","ab","cd"];
var str="gx";
if(arr.lastIndexOf(str)===-1){
	console.log("指定元素:"+str+" 不在数组中");
}else{
	console.log("指定元素: "+str+" 在数组中");
}
登录后复制

3.png

【相关推荐:javascript学习教程

以上就是es6怎么判断是否在数组里的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号