Menggabungkan Tatasusunan Objek dalam JavaScript
Andaikan anda mempunyai dua tatasusunan objek:
var arr1 = [ { name: "lang", value: "English" }, { name: "age", value: "18" }, ]; var arr2 = [ { name: "childs", value: "5" }, { name: "lang", value: "German" }, ];
Anda mahu gabungkan tatasusunan ini menjadi satu tatasusunan:
var arr3 = [ { name: "lang", value: "German" }, { name: "age", value: "18" }, { name: "childs", value: "5" }, ];
Kaedah $.extend() jQuery
Anda boleh mempertimbangkan untuk menggunakan $.extend() pada mulanya. Walau bagaimanapun, ia tidak memenuhi keperluan anda, kerana ia hanya mengemas kini tatasusunan pertama:
$.extend(arr1, arr2); // arr4 = [{name : "childs", value: '5'}, {name: "lang", value: "German"}]
Menggunakan Array.prototype.push.apply()
Lagi cara berkesan untuk menggabungkan tatasusunan adalah dengan menggunakan Array.prototype.push.apply():
Array.prototype.push.apply(arr1, arr2);
Barisan kod ini pada asasnya menolak unsur arr2 ke hujung arr1. Hasilnya ialah tatasusunan bercantum yang disimpan dalam 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
Output:
[ { name: "lang", value: "English" }, { name: "age", value: "18" }, { name: "childs", value: "5" }, { name: "lang", value: "German" }, ]
Atas ialah kandungan terperinci Bagaimana untuk Menggabungkan Dua Tatasusunan JavaScript Objek dengan Cekap?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!