在沒有函式庫的情況下在 JavaScript中尋找數組交集
要在不使用其他庫的情況下確定兩個數組的交集,請考慮實現以下內容代碼:
解決方案:
結合使用Array.prototype.filter 和Array.prototype.includes方法:
const filteredArray = array1.filter(value => array2.includes(value));
說明:
此程式碼過濾元素array1 的值取決於它們是否也存在於 array2 中。 include 方法檢查數組中是否存在元素。因此,結果是一個只包含兩個輸入陣列共有的元素的陣列。
對於舊版瀏覽器:
如果使用不支援的舊版瀏覽器箭頭函數或包含,以下程式碼可以使用:
var filteredArray = array1.filter(function(n) { return array2.indexOf(n) !== -1; });
注意事項:
要注意的是,include和indexOf 都使用嚴格相等(===)執行比較。如果陣列包含對象,則僅比較對象參考。為了適應自訂比較邏輯,請改用 Array.prototype.some。
以上是如何在不使用外部函式庫的情況下找到兩個 JavaScript 陣列的交集?的詳細內容。更多資訊請關注PHP中文網其他相關文章!