首頁 > web前端 > js教程 > 如何在不使用函式庫的情況下在 JavaScript 中尋找兩個陣列的交集?

如何在不使用函式庫的情況下在 JavaScript 中尋找兩個陣列的交集?

Patricia Arquette
發布: 2025-01-02 15:11:40
原創
526 人瀏覽過

How to Find the Intersection of Two Arrays in JavaScript Without Using Libraries?

在沒有庫的情況下查找數組交集

正在尋求一種簡化的解決方案來計算 JavaScript 中數組的交集?本文探討了一個在不依賴外部函式庫的情況下提供此功能的程式碼片段。

問題:

我們如何寫以兩個陣列作為輸入並傳回兩者中都出現的元素陣列?

答案:

利用過濾器方法的力量,我們可以為這個問題創建一個簡潔的解決方案:

const filteredArray = array1.filter(value => array2.includes(value));
登入後複製

這個程式碼過濾第一個數組,只回傳在第二個數組中也找到的元素array.

實作:

filter方法迭代數組中的每個元素,並傳回一個僅包含通過所提供條件的元素的新數組。在我們的例子中,條件使用includes方法檢查目前元素是否包含在第二個陣列中。

附加說明:

對於不支援的舊版瀏覽器箭頭函數或includes:

var filteredArray = array1.filter(function(n) {
  return array2.indexOf(n) !== -1;
});
登入後複製

記住,includes和indexOf都使用嚴格相等進行比較。如果您的陣列包含對象,則程式碼將比較對象引用而不是其內容。考慮使用 Array.prototype.some 進行自訂比較邏輯。

以上是如何在不使用函式庫的情況下在 JavaScript 中尋找兩個陣列的交集?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板