Bagaimanakah Elvis dan Operator Navigasi Selamat Melindungi Nilai JavaScript?

Barbara Streisand
Lepaskan: 2024-11-04 01:20:03
asal
335 orang telah melayarinya

How do the Elvis and Safe Navigation Operators Protect JavaScript Values?

Melindungi Nilai JavaScript: Elvis dan Operator Navigasi Selamat

Dalam JavaScript, memastikan pembolehubah tidak batal atau tidak ditentukan adalah penting untuk mengelakkan ralat. Pengendali Elvis dan pengendali navigasi selamat ialah dua teknik yang boleh membantu dengan tugas ini.

Operator Elvis: Pintasan Bersyarat

Serupa dengan pengendali ternary Java, pengendali Elvis (?:) memberikan nilai lalai jika ungkapan sebelah kiri diselesaikan kepada palsu, batal atau tidak ditentukan. Contohnya:

const displayName = user.name ?: "Anonymous";
Salin selepas log masuk

Jika nama pengguna wujud dan tidak kosong, displayName akan menerima nilainya. Jika tidak, ia akan lalai kepada "Tanpa Nama."

Operator Navigasi Selamat: Mengelakkan NullPointerExceptions

Operator navigasi selamat (?.) menghalang NullPointerExceptions apabila mengakses sifat yang berpotensi null objek. Daripada membuang pengecualian, ia hanya mengembalikan null. Contohnya:

const streetName = user?.address?.street;
Salin selepas log masuk

Jika alamat pengguna atau pengguna adalah batal, streetName akan kekal batal. Ini melindungi daripada ralat apabila mengakses sifat objek yang tidak wujud.

Alternatif dalam JavaScript

Pada masa ini, JavaScript tidak mempunyai pengendali Elvis. Sebaliknya, anda boleh menggunakan operator OR logik (||) untuk tugasan bersyarat:

const displayName = user.name || "Anonymous";
Salin selepas log masuk

Walau bagaimanapun, tiada persamaan langsung untuk pengendali navigasi selamat. Untuk kefungsian yang serupa, pertimbangkan untuk menggunakan CoffeeScript, yang menyediakan pengendali wujud:

const zip = lottery.drawWinner?().address?.zipcode;
Salin selepas log masuk

CoffeeScript juga menawarkan peningkatan sintaksis lain seperti ulasan berbilang baris, pintasan fungsi dan panggilan fungsi "seksi". Ciri ini boleh meningkatkan kebolehbacaan dan ekspresif dalam kod JavaScript.

Atas ialah kandungan terperinci Bagaimanakah Elvis dan Operator Navigasi Selamat Melindungi Nilai 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan