jquery inArray意外行为

时间:2015-09-08 14:44:46

标签: javascript jquery arrays

所以我在javascript中有一个数组,想看看它中是否存在一个值......虽然它返回false,即使数组中确实存在120。我同时写了自己的方法来解决这个问题,虽然只是想看看其他人是否能看到我在这里做错了什么?

var myArray = [120, 121, 222];

if (jQuery.inArray(120, myArray)) {
    alert("in my array");
} else {
    alert("not in array");
}

jsFiddle - http://jsfiddle.net/453ebncs/

1 个答案:

答案 0 :(得分:3)

由于jQuery.inArray返回-1位置(在您的情况下,它将是0),而0false,你需要检查>= 0



var myArray = [120, 121, 222];
if (jQuery.inArray(120, myArray) >= 0) {
   alert("in my array");
} else {
   alert("not in array");
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
&#13;
&#13;