Bagaimana untuk Meratakan Objek Bersarang dengan Penyelesaian Satu Talian?

Mary-Kate Olsen
Lepaskan: 2024-10-22 16:22:02
asal
584 orang telah melayarinya

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))
Salin selepas log masuk

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!

sumber: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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!