JS/jQuery:已经在数组中?

dco*_*bus 0 javascript arrays jquery

我试图找出检查项目是否已经在数组中的最佳方法.

我有许多属于5个组中的1个的复选框.当用户单击其中一个复选框时,属于其中一个组的第二个和第三个列表将写入该页面.

我要做的是将这些组添加到一个数组中,一旦添加它们,迭代数组并添加第二个和第三个列表.

var v = $(this).val();
// or this could be "something"

    if ($.inArray(v, _catArray)) {
        alert("it's here..");
    } else {
        alert("not in array");
    }
Run Code Online (Sandbox Code Playgroud)

无论如何,这告诉我它在数组中......即使它根本不存在.

Roc*_*mat 5

jQuery有一个$.inArray()你可以使用的方法.

请注意,$.inArray()如果它不在数组中,则返回-1,如果不在,则返回位置.它不返回布尔值.

例:

if($.inArray("a", myArray) != -1){
    alert('In Array');
}
else{
    alert('Not In Array');
}
Run Code Online (Sandbox Code Playgroud)