Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimanakah Saya Boleh Mengeluarkan Sifat Objek Tatasusunan Dengan Cekap Menggunakan Pemusnahan ES6?

Bagaimanakah Saya Boleh Mengeluarkan Sifat Objek Tatasusunan Dengan Cekap Menggunakan Pemusnahan ES6?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-12 10:35:02435semak imbas

How Can I Efficiently Remove Array Object Properties Using ES6 Destructuring?

Alih Keluar Sifat Objek Tatasusunan Dengan Cekap

Menghapuskan sifat khusus daripada objek dalam tatasusunan boleh menjadi menyusahkan menggunakan gelung tradisional. Untuk menyelaraskan proses ini, mari kita terokai pendekatan yang lebih cekap berdasarkan pemusnahan ES6.

Pendekatan Asli Untuk Gelung

Kaedah tradisional melibatkan penggunaan gelung for untuk mengulangi setiap objek dan padamkan secara manual harta yang dipersoalkan:

var array = [{"bad": "something", "good":"something"},{"bad":"something", "good":"something"},...];

for (var i = 0, len = array.length; i < len; i++) {
  delete array[i].bad;
}

Walaupun berfungsi, kaedah ini tidak jelas dan terdedah kepada ralat.

ES6 Memusnahkan untuk Menyelamat

ES6 memperkenalkan cara yang mudah untuk memusnahkan objek dan secara terpilih hanya mengekalkan sifat yang dikehendaki. Menggunakan operator spread ("..."), kita boleh mengekstrak semua sifat kecuali yang ingin kita alih keluar:

const newArray = array.map(({dropAttr1, dropAttr2, ...keepAttrs}) => keepAttrs)

Dalam kes ini, kami mencipta tatasusunan baharu yang dipanggil newArray. Fungsi map() berulang ke atas tatasusunan asal, dan untuk setiap objek, ia memusnahkannya menjadi objek baharu dengan semua sifat kecuali dropAttr1 dan dropAttr2. Sifat selebihnya dikumpulkan ke dalam objek keepAttrs.

Dengan bergantung pada penstrukturan dan bukannya gelung, anda memudahkan kod, meningkatkan kebolehbacaan dan memastikan konsistensi dalam penyingkiran harta benda.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengeluarkan Sifat Objek Tatasusunan Dengan Cekap Menggunakan Pemusnahan ES6?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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