2010-11-29 148 views
0

我通過號碼列表試圖循環,並檢查是否這個數字是使用jQuery.each和jQuery.inArray號的另一列表的一部分。 jQuery.inArray似乎沒有按預期行事。jQuery.inArray不表現爲預期

這裏是我的代碼:

var some_numbers = [1, 2]; 
var more_numbers = [0, 1, 2]; 

$.each(more_numbers, function(index, value) { 
    if($.inArray(value, some_numbers)) { 
    console.log(value); 
    } 
}); 

console.log('Some Numbers:'); 
console.log(some_numbers); 

這裏是導致控制檯輸出:

0 
2 
Some Numbers: 
[1, 2] 

有誰願意幫?這太令人生氣了。

編輯:問題解決了!更改我的條件爲:

if($.inArray(value, some_numbers) !== -1) 

謝謝大家!

+0

你應該接受你的問題的答案。 – SLaks 2010-11-29 14:16:29

+0

根據我嘗試這樣做時出現的對話,我無法接受另一個7分鐘的答案。 – 2010-11-29 14:19:14

回答

3

$.inArray返回一個指標,而不是一個布爾值。

要檢查元素是否被人發現,你需要檢查它是否是>= 0