JavaScript数组是否具有Python的“if a in list”?

时间:2011-09-16 09:45:21

标签: javascript python

如果我在Python中有一个列表,我可以使用in运算符检查给定值是否在其中:

>>> my_list = ['a', 'b', 'c']

>>> 'a' in my_list
True

>>> 'd' in my_list
False

如果我有一个JavaScript数组,例如

var my_array = ['a', 'b', 'c'];

我可以用与Python的in运算符类似的方式检查值是否在其中,或者我是否需要遍历数组?

4 个答案:

答案 0 :(得分:11)

var my_array = ['a', 'b', 'c'];
alert(my_array.indexOf('b'));
alert(my_array.indexOf('dd'));

如果找不到元素,您将收到 -1

答案 1 :(得分:5)

从ES6开始,建议使用include()代替笨拙的indexOf()。

var my_array = ['a', 'b', 'c'];

my_array.includes('a');  // true

my_array.includes('dd'); // false

答案 2 :(得分:2)

var IN = function(ls, val){
    return ls.indexOf(val) != -1;
}

var my_array = ['a', 'b', 'c'];
IN(my_array, 'a');

答案 3 :(得分:0)

使用es6的最新方法如​​下:

let myArray = ['a','b','c'];

console.log(myArray.includes('a'))

这将返回true或false