在运算符中总是返回false

时间:2015-06-24 00:21:40

标签: javascript arrays

无法弄清楚为什么这总是会返回false:

var filter_clients = [25,351];
var data = 351;
console.log(filter_clients);
console.log(data);
if(data in filter_clients) console.log('in');
else console.log('out');

fiddle

1 个答案:

答案 0 :(得分:1)

使用数组时,in运算符适用于索引而不适用于值。例子:

0 in filter_clients //true
1 in filter_clients //true
2 in filter_clients //false

这是实现您尝试做的事情的方法

filter_clients.indexOf(data) != -1