本文主要给大家介绍了关于利用JavaScript查询某个值是否数组内的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍:
问题
var b = ["aa","bb"]
> "aa" in b
我要查询字符串aa是否在数组里面,in可行么?
in
首选说in操作符
用过python的都想是不是可以用in,可惜不能用,先看看python的效果:
>> a = ["aa","bb"]
>>> "aa" in a
True
>>>
但是JavaScript不一样,in操作的对象要是一个对象,在MDN的官网有说:
nofollow" target="_blank" href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/in">https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/in
简言之就是:
1.数组得搜下标
2.对象可以为key in obj这种,实例:
// Predefined objects'PI' in Math // returns true
// Custom objectsvar mycar = {make: 'Honda',model: 'Accord',year: 1998};
'make' in mycar // returns true
'model' in mycar // returns true
indexOf
这是个好东西,可以直接使用,如果是前端使用要确保浏览器支持,nodejs支持没有问题的。
实例:
var b = ["aa","bb"]
undefined
> "aa" in b
false
> b.indexOf("aa")
0
> b.indexOf("aaa")
最简单粗暴的办法
就是做一个for 循环这种,一个个比较吧
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对编程之家的支持
原文链接:https://www.f2er.com/js/37487.html