首頁 >web前端 >js教程 >如何在不迭代物件鍵的情況下根據一個鍵高效地合併兩個物件數組?

如何在不迭代物件鍵的情況下根據一個鍵高效地合併兩個物件數組?

Barbara Streisand
Barbara Streisand原創
2024-12-29 02:43:14360瀏覽

How to Efficiently Merge Two Object Arrays Based on a Key Without Iterating Object Keys?

基於鍵合併物件陣列而不迭代物件鍵

考慮有兩個物件陣列的場景:

const array1 = [
  { id: "abdc4051", date: "2017-01-24" },
  { id: "abdc4052", date: "2017-01-22" }
];

const array2 = [
  { id: "abdc4051", name: "ab" },
  { id: "abdc4052", name: "abc" }
];

我們的目標就是根據i d屬性合併這些數組,得到一個結合了兩者屬性的數組物件:

[
  { id: "abdc4051", date: "2017-01-24", name: "ab" },
  { id: "abdc4052", date: "2017-01-22", name: "abc" }
]

為了在不使用物件鍵循環的情況下有效地實現這一點,我們可以利用map() 函數:

const mergedArray = array1.map((item, index) => Object.assign({}, item, array2[index]));

此方法使用 Object.assign()方法將兩個數組中對應對象的屬性合併為一個新的組合對象,然後將其累積到 mergedArray 中。

產生的合併數組滿足我們的要求要求是基於共享 id 鍵組合屬性,而不需要對物件鍵進行迭代循環。

以上是如何在不迭代物件鍵的情況下根據一個鍵高效地合併兩個物件數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn