ホームページ >ウェブフロントエンド >jsチュートリアル >2 つの JavaScript オブジェクト配列を効率的にマージするにはどうすればよいですか?

2 つの JavaScript オブジェクト配列を効率的にマージするにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-15 09:09:02277ブラウズ

How to Efficiently Merge Two JavaScript Arrays of Objects?

JavaScript でのオブジェクトの配列のマージ

オブジェクトの 2 つの配列があるとします。

var arr1 = [
  { name: "lang", value: "English" },
  { name: "age", value: "18" },
];

var arr2 = [
  { name: "childs", value: "5" },
  { name: "lang", value: "German" },
];

これらの配列を単一の配列にマージしますarray:

var arr3 = [
  { name: "lang", value: "German" },
  { name: "age", value: "18" },
  { name: "childs", value: "5" },
];

jQuery の $.extend() メソッド

最初は $.extend() の使用を検討してもよいでしょう。ただし、これは単に最初の配列を更新するだけなので、要件を満たしません。

$.extend(arr1, arr2); // arr4 = [{name : "childs", value: '5'}, {name: "lang", value: "German"}]

Using Array.prototype.push.apply()

A more配列をマージする効果的な方法は、 Array.prototype.push.apply():

Array.prototype.push.apply(arr1, arr2);

このコード行は、基本的に arr2 の要素を arr1 の末尾にプッシュします。結果は、arr1 に格納されるマージされた配列です。

// Example

var arr1 = [
  { name: "lang", value: "English" },
  { name: "age", value: "18" },
];

var arr2 = [
  { name: "childs", value: "5" },
  { name: "lang", value: "German" },
];

Array.prototype.push.apply(arr1, arr2);

console.log(arr1); // final merged result will be in arr1

出力:

[
  { name: "lang", value: "English" },
  { name: "age", value: "18" },
  { name: "childs", value: "5" },
  { name: "lang", value: "German" },
]

以上が2 つの JavaScript オブジェクト配列を効率的にマージするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。