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

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

Linda Hamilton
リリース: 2024-11-15 09:09:02
オリジナル
260 人が閲覧しました

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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート