javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > JavaScript查询某个值是否数组内

利用JavaScript如何查询某个值是否数组内

作者:多客博图

这篇文章主要给大家介绍了关于利用JavaScript如何查询某个值是否数组内的相关资料,文中通过示例代码分别介绍了实现该问题的一些解决方法是否可行,需要的朋友可以参考借鉴,下面跟着小编来一起学习学习吧。

本文主要给大家介绍了关于利用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的官网有说:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/in

简言之就是:

    1.数组得搜下标

    2.对象可以为key in obj这种,实例:

// Arraysvar trees = ['redwood', 'bay', 'cedar', 'oak', 'maple'];
0 in trees // returns true
3 in trees // returns true
6 in trees // returns false
'bay' in trees // returns false (you must specify the 
   // index number, not the value at that index)
'length' in trees // returns true (length is an Array property)
Symbol.iterator in trees // returns true (arrays are iterable, works only in ES2015+)

// 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 循环这种,一个个比较吧

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持

您可能感兴趣的文章:
阅读全文