合併陣列是程式設計中的常見任務,但當您想要確保產生的陣列僅包含獨特的物品。在本文中,我們將探索如何合併兩個 JavaScript 數組,同時保留其原始順序並消除重複元素。
考慮兩個 JavaScript 陣列:
var array1 = ["Vijendra", "Singh"]; var array2 = ["Singh", "Shakya"];
我們的目標是建立一個新的陣列 array3,包含 array1 和 array2 中的唯一元素。正確的輸出應該是:
["Vijendra", "Singh", "Shakya"]
為了實現這一點,我們可以利用JavaScript 內建陣列方法的組合:
簡單數字組合並
要簡單地合併兩個數組而不刪除重複項,我們可以使用concat()方法:
var array3 = array1.concat(array2); console.log(array3); // ["Vijendra", "Singh", "Singh", "Shakya"]
這將建立一個包含 array1 和 array2 中所有元素的新陣列。但是,它並不能消除重複項。
透過重複資料刪除進行合併
要在合併數組時過濾掉重複項,我們可以使用reduce() 的組合和includes()方法:
var array3 = array1.reduce((acc, curr) => !acc.includes(curr) ? acc.concat(curr) : acc, []); var array4 = array3.concat(array2.filter(x => !array3.includes(x))); console.log(array4); // ["Vijendra", "Singh", "Shakya"]
在這段程式碼中,我們在array1上使用reduce()來建立一個新陣列只包含獨特的元素。然後,我們將這個新數組與 array2 中過濾後的元素連接起來,確保刪除重複項。
以上是如何合併兩個 JavaScript 陣列並僅保留唯一的項目?的詳細內容。更多資訊請關注PHP中文網其他相關文章!