Bilakah || Operator Digunakan untuk Tetapan Lalai dalam JavaScript?

Linda Hamilton
Lepaskan: 2024-10-18 11:31:03
asal
776 orang telah melayarinya

When is the || Operator Used for Default Setting in JavaScript?

Menyingkap Penggunaan Tersembunyi || Operator dalam Konteks Bukan Boolean

Dalam pustaka JavaScript yang digunakan untuk lukisan kanvas, penggunaan pelik bagi operator logik OR (||) telah muncul. Ungkapan seperti var $time = Date.now || function() { return new Date; }; mencetuskan persoalan: adakah ini variasi daripada yang biasa || pengendali, atau adakah sesuatu yang lain sedang bermain?

Untuk membongkar misteri ini, kami menyelidiki kedalaman Tinjauan Crockford tentang Bahasa Pengaturcaraan JavaScript. Di sana, kami mendapati bahawa || operator mempunyai alias tersembunyi: operator lalai. Ia tidak menilai kepada nilai boolean tetapi sebaliknya mengembalikan operan kiri atau kanan bergantung pada keadaan tertentu.

Apabila operan pertama menilai kepada false, null, undefined, rentetan kosong atau 0, nilai lalai operator melangkah masuk dan mengembalikan operan kedua. Tingkah laku unik ini ternyata menjadi alat yang mudah untuk menyemak nol dan menetapkan nilai lalai.

Sebagai contoh, dalam ungkapan $time, jika Date.now tidak wujud atau mengembalikan nilai palsu, sandaran fungsi dilaksanakan untuk memastikan kewujudan fungsi masa. Begitu juga, nilai = v || 10 memberikan nilai v jika ia bukan palsu; jika tidak, ia menggunakan nilai lalai 10.

Memahami peranan ganti || ini || operator menjelaskan penggunaannya dalam konteks bukan boolean. Ini ialah pemegang tempat, penetap lalai, yang menjamin ketersediaan nilai atau ciri sandaran apabila perlu.

Atas ialah kandungan terperinci Bilakah || Operator Digunakan untuk Tetapan Lalai dalam JavaScript?. 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!