Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk Meratakan Objek Bersarang dengan Penyelesaian Satu Talian?

Bagaimana untuk Meratakan Objek Bersarang dengan Penyelesaian Satu Talian?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-22 16:22:02588semak imbas

How to Flatten Nested Objects with a One-Line Solution?

Penyelesaian Satu Talian untuk Meratakan Objek Bersarang

Dalam bidang manipulasi data, meratakan objek bersarang adalah tugas biasa. Anda mungkin perlu mengubah objek kompleks dengan berbilang peringkat sarang menjadi lebih mudah dengan satu tahap kunci dan nilai. Satu pendekatan yang cekap ialah menggunakan satu garisan ringkas:

Object.assign({}, ...function _flatten(o) { return [].concat(...Object.keys(o).map(k => typeof o[k] === 'object' ? _flatten(o[k]) : ({[k]: o[k]})))}(yourObject))

Mari kita pecahkan satu baris ini:

  • Premisnya adalah untuk melintasi objek secara rekursif dan membina tatasusunan objek satu sifat bersarang.
  • Kaedah Object.assign kemudiannya digunakan untuk menggabungkan objek ini menjadi satu objek leper.
  • Fungsi _flatten ialah pembantu rekursif yang turun ke objek bersarang, mencipta objek satu sifat berdasarkan pasangan nilai kunci.
  • Proses ini berterusan sehingga semua objek bersarang telah diratakan.

Untuk menggunakan satu pelapik ini, hanya hantar objek bersarang anda ke dalam ruang letak yourObject. Objek diratakan yang terhasil akan boleh diakses sebagai output ungkapan.

Atas ialah kandungan terperinci Bagaimana untuk Meratakan Objek Bersarang dengan Penyelesaian Satu Talian?. 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