2
jQuery和陣列isArray
工作不正常jQuery和Array isArray無法正常工作?
如果我做的:
var tags = document.getElementsByTagName('div');
jQuery.isArray(tags) // returns false
Array.isArray(tags) // returns false
function isArray(object){
return typeof object === "object" && object.length > -1;
}
isArray(tags) // return true
此問題會導致實際的錯誤在我的網站:
在我的網站我有輸入名稱的表單標籤「計劃」。
如果我只有一個輸入名稱「plan」,它將返回一個無數組。
但是,如果我有兩個輸入,都有名稱「計劃」,它會返回一個數組。我使用jQuery.isArray
來檢查它是否是一個數組,但不得不放棄使用jQuery isArray。
人們評論說它是nodelist,但nodelist的用法與數組完全相同。那麼在什麼情況下,你真的想避免它像數組一樣使用?
這取決於。你如何定義「數組」? '標籤'_不是'數組'。 – SLaks
如果他們都返回錯誤,他們有機會得到它是正確的,你錯了,它不是一個真正的數組。 – adeneo
@adeneo:具體來說,它是一個NodeList。 – SLaks