使用inArray搜索

时间:2013-11-14 15:45:39

标签: jquery

我正在使用jquery inArray来搜索带有关联数组的元素。我在下面的代码中做错了什么?它返回-1 ..

小提琴 - http://jsfiddle.net/hwSuD/1/

var arr = [];

arr[3435345] = {
    location : 'Earth'
}

console.log($.inArray(3435345,arr));  //throws -1

1 个答案:

答案 0 :(得分:2)

您的$.inArray()用法会在数组中查找3435345并返回索引。您正在将对象添加到该数组的3435345索引。这就是您使用$.inArray()的方式。

var arr = [];
arr.push(3435345);
var index = $.inArray(3435345, arr);

将返回0。

您可能想要创建哈希表?那样做吧。

var obj = {};
obj[3435345] = { location: 'Earth' };
if ( obj.hasOwnProperty(3435345) ) {
  // It exists!
}