我正在使用jquery inArray来搜索带有关联数组的元素。我在下面的代码中做错了什么?它返回-1 ..
小提琴 - http://jsfiddle.net/hwSuD/1/
var arr = [];
arr[3435345] = {
location : 'Earth'
}
console.log($.inArray(3435345,arr)); //throws -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!
}