Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Menambah Ahli Secara Bersyarat pada Objek JavaScript?

Bagaimana untuk Menambah Ahli Secara Bersyarat pada Objek JavaScript?

DDD
Lepaskan: 2024-12-04 06:56:09
asal
727 orang telah melayarinya

How to Conditionally Add Members to a JavaScript Object?

Menambah Ahli Secara Bersyarat pada Objek dalam JavaScript

Soalan: Bagaimanakah saya boleh menambah ahli secara dinamik pada objek, bergantung pada syarat tertentu, dalam JavaScript?

Awal Pendekatan:

Satu pendekatan mudah ialah menggunakan pernyataan if untuk menambah ahli jika syarat dipenuhi:

var a = {};
if (someCondition)
    a.b = 5;
Salin selepas log masuk

Penyelesaian Idiomatik:

Untuk menulis kod yang lebih idiomatik dan ringkas, elakkan daripada menggunakan undefined sebagai nilai untuk ahli bersyarat. Sebaliknya, gunakan operator ternary bersyarat:

a = {
    b: (someCondition? 5 : undefined)
};
Salin selepas log masuk

Walau bagaimanapun, pendekatan ini masih menyebabkan ahli b ditakrifkan dengan nilai yang tidak ditentukan jika syarat tidak dipenuhi.

ES6 Penyelesaian dengan Logik DAN:

Untuk kes umum dengan berbilang ahli, ES6 memperkenalkan penyelesaian pintar menggunakan operator spread dan penilaian logik DAN litar pintas:

const a = {
   ...(someCondition && {b: 5})
}
Salin selepas log masuk

Operator logik DAN (&&) menilai kepada palsu jika mana-mana operannya adalah palsu. Memandangkan undefined adalah palsu dalam JavaScript, jika someCondition adalah palsu, objek {b: 5} tidak disertakan dalam operator spread, dengan berkesan menghalang ahli b daripada ditambahkan pada objek.

Atas ialah kandungan terperinci Bagaimana untuk Menambah Ahli Secara Bersyarat pada Objek JavaScript?. 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