• 技术文章 >web前端 >前端问答

    es6怎么判断是否在数组里

    青灯夜游青灯夜游2023-01-16 17:35:23原创86

    判断方法:1、使用includes()函数,可判断数组是否包含一个指定的值,语法“arr.includes(值)”,如果返回true则存在;2、使用find()函数,可查找符合添加的第一个元素,语法“arr.find(function(v){if(v==值{...}})”;3、使用some()函数,语法“arr.some(i=>i===值)”,如果返回true则存在。

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

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

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

    方法1:使用includes()方法

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

    array.includes(searchElement, fromIndex);

    示例:

    arr = [1,2,3,4,5]
    console.log(arr.includes(5));

    1.png

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

    方法2:使用find()方法

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

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

    示例:

    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)

    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中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:ES6 es6数组
    上一篇:es6怎么判断字符串中是否有某个字符串 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • vue中用到es6特性有哪些• es6模块是什么原理• es6有哪些语法糖• es6怎么删除数组中的某一项• es5和es6怎么实现数组去重
    1/1

    PHP中文网