Jadual Kandungan
JavaScript Array Elemen Penggabungan: Gabungkan Elemen dengan ID yang sama ke Satu Objek
Rumah hujung hadapan web tutorial js Bagaimana untuk menggabungkan elemen array dengan ID yang sama ke dalam satu objek menggunakan JavaScript?

Bagaimana untuk menggabungkan elemen array dengan ID yang sama ke dalam satu objek menggunakan JavaScript?

Apr 04, 2025 pm 05:09 PM
switch red

Bagaimana cara menggabungkan elemen array dengan ID yang sama ke dalam satu objek menggunakan JavaScript?

JavaScript Array Elemen Penggabungan: Gabungkan Elemen dengan ID yang sama ke Satu Objek

Dalam pemprosesan data, ia sering perlu untuk menggabungkan elemen array dengan ID yang sama ke dalam satu objek. Artikel ini menyediakan penyelesaian JavaScript untuk menukar elemen array dengan ID yang sama tetapi atribut yang berbeza ke dalam format array baru.

Format data asal:

 senarai const = [
    {id: "202301", Jine: 23, Jenis: "Makan Malam"},
    {id: "202301", Jine: 87.5, Jenis: "Sarapan"},
    {id: "202301", Jine: 1065.5, Jenis: "Makanan Cina"},
    {id: "202302", Jine: 10, Jenis: "Makan Malam"},
    {id: "202302", Jine: 181.5, Jenis: "Sarapan"},
    {id: "202302", Jine: 633.5, Jenis: "Makanan Cina"}
];

Format data sasaran:

 Const TargetList = [
    {id: "202301", jine1: 87.5, jine2: 1065.5, jine3: 23},
    {id: "202302", Jine1: 181.5, Jine2: 633.5, Jine3: 10}
];

Penyelesaian:

Kami akan menggunakan kaedah reduce untuk melaksanakan penukaran data. Kaedah ini melangkah ke atas array dan mengumpul setiap elemen ke dalam objek hasil.

 const result = object.values ​​(list.reduce ((acc, curr) => {
    const {id, jine, type} = curr;
    jika (! acc [id]) {
        acc [id] = {id};
    }
    suis (jenis) {
        kes 'sarapan': acc [id] .jine1 = jine; rehat;
        kes 'makanan Cina': acc [id] .jine2 = jine; rehat;
        kes 'makan malam': acc [id] .jine3 = jine; rehat;
    }
    kembali acc;
}, {}));

console.log (hasil); // Format data sasaran output

Penjelasan kod:

  1. reduce kaedah: Kaedah reduce melelehkan pelbagai list dan mengumpul setiap elemen ke dalam objek acc .
  2. acc[id] : Gunakan id sebagai kunci untuk menyimpan data ke dalam objek acc . Jika id tidak wujud, objek baru dibuat.
  3. Pernyataan switch : Berikan nilai jine kepada jine1 , jine2 atau jine3 mengikut nilai atribut type .
  4. Object.values : Akhirnya, gunakan kaedah Object.values ​​untuk menukar objek acc ke dalam array untuk mendapatkan format data sasaran.

Kaedah ini jelas dan ringkas, mengelakkan penggunaan perpustakaan luaran, dan secara langsung menggunakan kaedah terbina dalam JavaScript untuk melaksanakan penukaran data. Ia juga lebih mudah untuk skala, jika anda perlu berurusan dengan lebih banyak jenis makan, tambahkan lebih banyak case dalam pernyataan switch .

Atas ialah kandungan terperinci Bagaimana untuk menggabungkan elemen array dengan ID yang sama ke dalam satu objek menggunakan JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk mengehadkan sumber pengguna di Linux? Bagaimana cara mengkonfigurasi ULIMIT? Bagaimana untuk mengehadkan sumber pengguna di Linux? Bagaimana cara mengkonfigurasi ULIMIT? May 29, 2025 pm 11:09 PM

Sistem Linux mengehadkan sumber pengguna melalui perintah ULIMIT untuk mengelakkan penggunaan sumber yang berlebihan. 1.Ulimit adalah arahan shell terbina dalam yang boleh mengehadkan bilangan deskriptor fail (-N), saiz memori (-V), kiraan thread (-u), dan lain-lain, yang dibahagikan kepada had lembut (nilai berkesan semasa) dan had keras (had atas maksimum). 2. Gunakan perintah ULIMIT secara langsung untuk pengubahsuaian sementara, seperti ULIMIT-N2048, tetapi hanya sah untuk sesi semasa. 3. Untuk kesan tetap, anda perlu mengubah suai /etc/security/limits.conf dan fail konfigurasi PAM, dan tambah sessionrequiredpam_limits.so. 4. Perkhidmatan SystemD perlu menetapkan LIM dalam fail unit

Apakah middleware di Laravel? Bagaimana menggunakannya? Apakah middleware di Laravel? Bagaimana menggunakannya? May 29, 2025 pm 09:27 PM

Middleware adalah mekanisme penapisan di Laravel yang digunakan untuk memintas dan memproses permintaan HTTP. Gunakan langkah: 1. Buat middleware: Gunakan perintah "phpartisanmake: middlewarecheckrole". 2. Tentukan Logik Pemprosesan: Tulis logik khusus dalam fail yang dihasilkan. 3. Daftar middleware: Tambah middleware dalam kernel.php. 4. Gunakan middleware: Sapukan middleware dalam definisi penghalaan.

Dasar cache halaman laravel Dasar cache halaman laravel May 29, 2025 pm 09:15 PM

Strategi caching halaman Laravel dapat meningkatkan prestasi laman web dengan ketara. 1) Gunakan fungsi pembantu cache untuk melaksanakan caching halaman, seperti kaedah cache :: ingat. 2) Pilih backend cache yang sesuai, seperti Redis. 3) Perhatikan isu konsistensi data, dan anda boleh menggunakan cache halus atau pendengar acara untuk membersihkan cache. 4) Pengoptimuman selanjutnya digabungkan dengan cache penghalaan, lihat cache dan tag cache. Dengan menggunakan strategi ini secara rasional, prestasi laman web dapat diperbaiki dengan berkesan.

Komik Korea Percuma Dalam Talian Melihat Komik Percuma Masuk Korea Percuma Korea Bacaan Dalam Talian Percuma Pull-Down Komik Korea Percuma Dalam Talian Melihat Komik Percuma Masuk Korea Percuma Korea Bacaan Dalam Talian Percuma Pull-Down Jun 12, 2025 pm 08:03 PM

Dengan perkembangan internet yang kuat, komik Korea (komik Korea) telah memenangi cinta lebih banyak pembaca di seluruh dunia dengan gaya lukisan indah mereka, plot menarik dan tema yang kaya dan pelbagai. Sekiranya anda ingin melakukan perjalanan ke mana-mana, di dunia komik Korea yang menarik, adalah penting untuk mencari platform bacaan dalam talian yang stabil, bebas dan kaya sumber. Artikel ini akan memberi anda panduan terperinci untuk menonton komik Korea dalam talian untuk komik percuma, membantu anda dengan mudah memulakan perjalanan komik Korea anda.

Proses Penyelesaian Master Replikasi Master-Hamba Redis Proses Penyelesaian Master Replikasi Master-Hamba Redis Jun 04, 2025 pm 08:51 PM

Langkah-langkah untuk menyelesaikan masalah dan membaiki kegagalan replikasi master-hamba Redis termasuk: 1. Periksa sambungan rangkaian dan gunakan ping atau telnet untuk menguji sambungan; 2. Semak fail konfigurasi REDIS untuk memastikan replika dan repl-timeout ditetapkan dengan betul; 3. Semak fail log Redis dan cari maklumat ralat; 4. Jika masalah rangkaian, cuba mulakan semula peranti rangkaian atau tukar laluan alternatif; 5. Jika ia adalah masalah konfigurasi, ubah fail konfigurasi; 6. Jika ia adalah masalah penyegerakan data, gunakan perintah hamba untuk menyambung semula data.

Lokasi Pantas dan Pengendalian Kegagalan Node Redis Cluster Lokasi Pantas dan Pengendalian Kegagalan Node Redis Cluster Jun 04, 2025 pm 08:54 PM

Lokasi cepat dan langkah pemprosesan untuk kegagalan nod redis cluster adalah seperti berikut: 1. Sahkan kesalahan: Gunakan perintah klusternodes untuk melihat status nod. Jika gagal dipaparkan, nod akan gagal. 2. Tentukan punca: Semak rangkaian, perkakasan, dan konfigurasi. Masalah biasa termasuk batas memori melebihi. 3. Pembaikan dan Pulihkan: Ambil langkah -langkah berdasarkan sebab -sebab, seperti memulakan semula perkhidmatan, menggantikan perkakasan atau mengubah suai konfigurasi. 4. Nota: Memastikan konsistensi data, pilih dasar failover yang sesuai, dan menubuhkan sistem pemantauan dan penggera.

Kucoin melantik dua eksekutif berprofil tinggi untuk melengkapkan pasukan kepimpinan Eropah Kucoin melantik dua eksekutif berprofil tinggi untuk melengkapkan pasukan kepimpinan Eropah Jun 12, 2025 am 10:45 AM

Pertukaran Cryptocurrency Global Kucoin baru-baru ini menyelesaikan pembentukan pasukan kepimpinan Eropah, melantik dua eksekutif yang sangat menonton. Perubahan kakitangan ini adalah sebahagian daripada susun atur dipercepatkan Kucoin di pasaran EU, terutamanya sebagai tindak balas kepada Peraturan Pengurusan Cryptoasset yang akan datang (MICAR). Pada masa ini, Syarikat sedang memajukan proses pelesenan yang berkaitan melalui Pihak Berkuasa Pasaran Kewangan Austria (FMA) dan memperkenalkan pakar -pakar kanan dari kewangan tradisional dan kripto untuk mengukuhkan pengurusannya. Kucoineu kini aktif berkomunikasi dengan FMA untuk mencapai operasi pematuhan penuh dengan matlamat menyediakan perkhidmatan cryptocurrency lengkap dalam Kawasan Ekonomi Eropah (EEA). Pada peringkat ini, syarikat belum menjalankan perniagaan di EU atau EEA dan akan mendapatkan lesen yang sepadan.

Perbandingan Prestasi dan Senario Aplikasi Bersama antara Redis dan Rabbitmq Perbandingan Prestasi dan Senario Aplikasi Bersama antara Redis dan Rabbitmq Jun 04, 2025 pm 08:45 PM

Redis dan Rabbitmq masing -masing mempunyai kelebihan sendiri dalam prestasi dan senario aplikasi bersama. 1.Redis melaksanakan dengan baik dalam membaca dan menulis data, dengan latensi sehingga mikroseconds, sesuai untuk senario konvensional yang tinggi. 2.RabbitMQ memberi tumpuan kepada pemesejan, latensi pada milisaat, dan menyokong model multi-queue dan pengguna. 3.

See all articles