备案 控制台
学习
实践
活动
专区
工具
TVP
写文章
专栏首页 全栈程序员必看 js判断字符串数组是否包含某个字符串_怎么判断数组有几个元素
6 0

海报分享

js判断字符串数组是否包含某个字符串_怎么判断数组有几个元素

方法一:indexOf(item,start)

Item:要查找的值; start:可选的整数参数,缺省则从起始位子开始查找。

indexOf() 返回元素在数组中的位置,如果没有则返回-1,该方法只能查找字符串,数字等,不能查找 或者 数组 或者 NaN ,如果想 查找 类 或者 数组,可以使用下面介绍的其他方法;

var arr = ['a','b','c','d'];
console.log(arr.indexOf('b'));	// 1
console.log(arr.indexOf('ab')); // -1
// 一般情况下判断元素是否存在
if(arr.indexOf('查找的元素') > -1){ 
	// 元素存在
}

方法二:arr.find() arr.find() 的参数是一个回调函数,数组内所有元素会遍历这个回调函数,直到找到第一个返回值为true的元素,然后返回该元素,否则返回undefined。 find() 数组中的每一个元素都会调用一次函数,但是当条件返回true时, find() 返回符合条件的元素的位置,之后的值不会再调用函数。

var tt = { 
"id": 2,
"name": "test",
var arr = [
"id": 1,
"name": "test",
"id": 2,
"name": "test",
"id": 3,
"name": "test",
var a=arr.find(function(value,index,arr){ 
return value['id'] == tt['id'] && value['name'] == tt['name']
console.log(a);//{id: 2, name: "test"}, 注意:这里返回的不是true,而是返回值为true的这个元素;

方法三:array.findIndex() findIndex() find() 的用法相似, find() 返回的是元素, findIndex() 返回的是第一个符合条件的数组元素的位置,如果所有元素都不符合条件则返回 -1 findIndex() 数组中的每一个元素都会调用一次函数,但是当条件返回true时, findIndex() 返回符合条件的元素的位置,之后的值不会再调用函数。

for() forEach() 的方法就不讲了,遍历后if判断就行

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

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

本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!
本文分享自作者个人站点/博客: 复制
如有侵权,请联系 cloudcommunity@tencent.com 删除。