如何檢查數組中的值
確定數組中是否存在特定值是一項常見的程式設計任務。但是,使用以下自訂函數時:
Array.prototype.contains = function(obj) { var i = this.length; while (i--) { if (this[i] == obj) { return true; } } return false; }
您可能會遇到意外行為(始終傳回 false)。這是因為函數依賴嚴格相等 (==) 比較,這在某些情況下可能會失敗(例如,數字被視為相等但不相同)。
使用jQuery 的穩健解決方案
為了在數組中進行可靠的值檢查,請考慮使用jQuery 的實用函數:
$.inArray(value, array)
This函數在陣列中搜尋指定值。如果找到該值,它將傳回其在數組中的索引。如果未找到該值,則傳回 -1。
用法範例
var arrValues = ["Sam","Great", "Sample", "High"]; var value = "Sam"; var result = $.inArray(value, arrValues); if (result !== -1) { // Value found in array } else { // Value not found in array }
其他參考
以上是為什麼我的 Array Contains 函數總是會傳回 False,以及如何可靠地檢查 JavaScript 陣列中的值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!