Mendapatkan Nilai Berbeza daripada Tatasusunan Objek dalam JavaScript
Pendekatan Optimum
Untuk mendapatkan semula dengan cekap nilai unik daripada tatasusunan objek, gabungan pengendali hamparan dan Tetapkan struktur data boleh bekerja. Dalam ES6 dan versi JavaScript yang lebih baru, pendekatan berikut amat disyorkan:
const data = [ { name: "Joe", age: 17 }, { name: "Bob", age: 17 }, { name: "Carl", age: 35 } ]; const distinctAges = [...new Set(data.map(item => item.age))]; console.log(distinctAges); // [17, 35]
Pendekatan ini menggunakan kuasa Set untuk mengalih keluar nilai pendua, dan operator spread untuk mencipta tatasusunan baharu daripada nilai unik. Fungsi peta berulang pada tatasusunan, mengekstrak hanya nilai sifat umur untuk pemprosesan selanjutnya.
Struktur Data Alternatif
Jika menstruktur data sebagai tatasusunan objek dengan unik kunci lebih diutamakan, struktur data Peta boleh digunakan:
const data = new Map([ ["1", { name: "Joe", age: 17 }], ["2", { name: "Bob", age: 17 }], ["3", { name: "Carl", age: 35 }] ]); const distinctAges = [...data.values()].map(item => item.age); console.log(distinctAges); // [17, 35]
Dalam senario ini, pembolehubah data ialah Peta dengan kekunci unik (cth., "1", "2", "3") dan nilai objek yang sepadan. Untuk mendapatkan semula umur yang berbeza, sifat nilai digunakan untuk mencipta tatasusunan nilai, yang kemudiannya dipetakan untuk mengekstrak nilai sifat umur sahaja.
Mengelakkan Lelaran Tidak Cekap
Dengan memanfaatkan struktur data Set atau struktur data Peta seperti yang diterangkan di atas, ia menjadi tidak perlu untuk melelang melalui setiap elemen tatasusunan dan menyemak sedia ada nilai. Struktur data ini mengendalikan keunikan secara asli, memberikan penyelesaian yang lebih cekap tanpa memerlukan lelaran yang menyusahkan.
Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Nilai Unik dengan Cekap daripada Susunan Objek dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!