使用簡單的 jQuery 代碼片段查找已知項值的數組項的索引。這有點類似於 .NET 的 Array.FindIndex
方法,但使用了 inArray
函數。
// 语法 jQuery.inArray(value, array) // 示例 jQuery.inArray("Sam", array)
jQuery 索引查找和數組項的常見問題解答
findIndex()
方法如何工作? JavaScript 中的 findIndex()
方法是一個內置函數,用於查找數組中第一個滿足提供測試函數的元素的索引。它對數組中的每個索引執行一次函數,直到找到函數返回真值的一個索引。如果找到這樣的元素,findIndex()
會立即返回該元素的索引。否則,它返回 -1。
findIndex()
和 indexOf()
的區別是什麼? findIndex()
和 indexOf()
都用於查找數組中元素的索引。但是,它們之間存在一些關鍵區別。 indexOf()
方法返回可以在數組中找到給定元素的第一個索引,如果不存在則返回 -1。它使用嚴格相等(與 ===
或三等號運算符相同的方法)來比較元素。另一方面,findIndex()
對數組中的每個元素執行回調函數,直到回調函數返回真值,然後它返回該元素的索引。如果沒有找到這樣的元素,它返回 -1。
findIndex()
嗎? 是的,你可以在 jQuery 中使用 findIndex()
。但是,需要注意的是,jQuery 沒有內置的 findIndex()
方法。相反,您可以使用 $.inArray()
方法,它類似於 JavaScript 的 indexOf()
方法。如果你想在 jQuery 中使用 findIndex()
,你需要先將你的 jQuery 對象轉換為 JavaScript 數組。
findIndex()
? 你可以通過提供一個檢查特定條件的回調函數來在對像數組中使用 findIndex()
。回調函數應該對你正在查找的對象返回 true,對所有其他對象返回 false。這是一個例子:
let array = [{id: 1, name: 'John'}, {id: 2, name: 'Jane'}, {id: 3, name: 'Joe'}]; let index = array.findIndex(obj => obj.id === 2); console.log(index); // 输出:1
findIndex()
中的測試函數會發生什麼? 如果有多個元素滿足 findIndex()
中的測試函數,該方法將返回第一個滿足該函數的元素的索引。它不會繼續檢查數組中剩餘的元素。
findIndex()
嗎? 不可以,你不能在字符串上使用 findIndex()
。 findIndex()
方法僅適用於數組對象。如果你想在字符串中查找字符或子字符串的索引,可以使用 indexOf()
或 lastIndexOf()
方法。
findIndex()
是否在所有瀏覽器中都受支持? findIndex()
方法在 Internet Explorer 中不受支持。但是,它在所有現代瀏覽器中都受支持,包括 Chrome、Firefox、Safari 和 Edge。
findIndex()
嗎? 是的,你可以在多維數組中使用 findIndex()
。但是,你需要提供一個可以處理嵌套數組的回調函數。回調函數需要迭代子數組並檢查你正在查找的條件。
findIndex()
查找滿足條件的最後一個元素? findIndex()
方法只返回第一個滿足提供的測試函數的元素的索引。如果你想查找滿足條件的最後一個元素,你需要先使用 reverse()
方法反轉數組,然後調用 findIndex()
。
findIndex()
嗎? 是的,你可以在類型化數組中使用 findIndex()
。類型化數組是一個類似 JavaScript 數組的對象,並提供了一種訪問原始二進制數據的方法。就像常規數組一樣,你可以使用 findIndex()
來查找類型化數組中第一個滿足提供的測試函數的元素的索引。
以上是jQuery查找數組項目的索引的詳細內容。更多資訊請關注PHP中文網其他相關文章!