Bagaimanakah Anda Boleh Mengubahsuai Sifat Objek Sedia Ada Menggunakan Pemusnahan dalam ES6?

DDD
Lepaskan: 2024-10-30 21:53:02
asal
579 orang telah melayarinya

How Can You Modify Existing Object Properties Using Destructuring in ES6?

Pemusnahan Objek Lanjutan

Dalam ES6, pemusnahan ialah sintaks yang membolehkan anda membongkar nilai daripada tatasusunan atau objek ke dalam pembolehubah individu. Walaupun pemusnahan adalah sangat mudah, ia boleh dihadkan jika anda ingin memberikan nilai kepada objek sedia ada.

Pertimbangkan senario berikut:

var foo = {
  x: "bar",
  y: "baz"
}
Salin selepas log masuk
var oof = {}
Salin selepas log masuk

Andaikan anda ingin memindahkan sifat x dan y dari foo hingga oof menggunakan penstrukturan. Percubaan mudah mungkin kelihatan seperti ini:

oof{x,y} = foo
Salin selepas log masuk

Walau bagaimanapun, ini tidak akan berjaya. Jadi, bagaimanakah anda boleh mengubah suai sifat objek sedia ada menggunakan penstrukturan?

Penyelesaian Yang Mungkin

Walaupun bukan pendekatan yang paling elegan, anda boleh menggunakan gabungan pemusnahan dan penugasan untuk mencapai hasil yang diingini:

({x: oof.x, y: oof.y} = foo);
Salin selepas log masuk

Ini akan membaca sifat x dan y daripada foo dan memberikannya kepada sifat yang sepadan pada oof.

Pendekatan Alternatif

Pendekatan alternatif untuk mengemas kini sifat objek termasuk:

oof.x = foo.x;
oof.y = foo.y;
Salin selepas log masuk

atau

['x', 'y'].forEach(prop => oof[prop] = foo[prop]);
Salin selepas log masuk

Pendekatan ini mungkin lebih jelas dan boleh dibaca, bergantung pada pilihan anda.

Atas ialah kandungan terperinci Bagaimanakah Anda Boleh Mengubahsuai Sifat Objek Sedia Ada Menggunakan Pemusnahan dalam ES6?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
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!