Pernah terfikir bagaimana pengendali ??
, ||
dan &&
JavaScript berfungsi di bawah hud? Artikel ini membongkar misteri penilaian litar pintas, menerangkan tingkah laku mereka dan menyerlahkan amalan terbaik.
Penilaian litar pintas dalam JavaScript bermaksud pengendali logik menilai ungkapan dari kiri ke kanan, berhenti sebaik sahaja hasilnya jelas.
Logik DAN (&&
)
Mengembalikan nilai palsu pertama yang ditemui; jika tidak, ia mengembalikan nilai terakhir jika semuanya benar.
<code class="language-javascript">let x = 5; let y = 0; console.log(x && y); // 0 console.log(x && true); // true</code>
Logik ATAU (||
)
Mengembalikan nilai kebenaran pertama yang ditemui; jika tidak, ia mengembalikan nilai terakhir jika semuanya palsu.
<code class="language-javascript">let a = null; let b = "Hello"; console.log(a || b); // Hello console.log(a || false); // false</code>
Operator Penggabungjalinan Batal (??
)
Memberikan nilai lalai hanya apabila operan kiri ialah null
atau undefined
.
<code class="language-javascript">let userName = null; let result = 0 ?? 100; console.log(result); // 0 console.log(userName ?? "Guest"); // Guest</code>
Penggunaan Gabungan (dengan Amalan Terbaik)
Menggabungkan pengendali ini memerlukan penggunaan kurungan yang teliti untuk mengelakkan hasil yang tidak dijangka.
<code class="language-javascript">let a = null; let b = 0; let c = 10; let d = 20; let result = (a ?? b) || (c && d); console.log(result); // 20</code>
(a ?? b)
menilai kepada 0
(memandangkan a
ialah null
). (c && d)
menilai kepada 20
. Oleh itu, 0 || 20
menghasilkan 20
.
Kelebihan Penilaian Litar pintas:
null
atau undefined
.Kelemahan:
Amalan Terbaik:
??
daripada ||
apabila berurusan secara khusus dengan null
atau undefined
untuk mengelakkan mengatasi nilai palsu lain (cth., 0
, ""
).Penilaian litar pintas bukan unik untuk JavaScript; ia adalah ciri biasa dalam banyak bahasa pengaturcaraan (Python, Java, C/C, dll.), walaupun sintaksnya mungkin berbeza.
Hubungi saya di LinkedIn: www.linkedin.com/in/geetansh-chahal-b7473b1b4/
Atas ialah kandungan terperinci Penilaian litar pintas dalam JavaScript: Meningkatkan prestasi dan memudahkan logik!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!