Memahami Operator Paip Berganda (||)
Dalam kebanyakan bahasa pengaturcaraan, pengendali paip berganda (||) mewakili operator OR logik. Ia menilai dua nilai Boolean dan mengikut peraturan ini:
Tafsiran JavaScript
Walau bagaimanapun , JavaScript mengendalikan || berbeza kerana ia adalah bahasa yang ditaip longgar. Ini bermakna:
Contoh:
(function(){}) || {} // True (empty function is truthy)
Penggunaan Praktikal dalam JavaScript
Fungsi Lalai Parameter:
function (title, msg) { var title = title || 'Error'; // Assigns 'Error' if title is falsy var msg = msg || 'Error on Request'; // Assigns 'Error on Request' if msg is falsy }
Amalan Pengaturcaraan Buruk:
Menetapkan || ungkapan terus kepada pembolehubah tidak digalakkan kerana ia menghalang nilai falsey sebagai parameter. Pertimbangkan fungsi ini:
function badFunction(flagA) { flagA = flagA || true; // FlagA always becomes true, even if passed false }
Amalan Lebih Baik:
Gunakan semakan eksplisit untuk kepalsuan sebaliknya:
function goodFunction(flagA) { flagA = typeof flagA !== "undefined" ? flagA : true; // Sets to true only if undefined }
Sintaks ES6 untuk Lalai Parameter:
function goodFunction(flagA = true) { // Sets to true only if omitted }
Kesimpulan:
JavaScript's || operator mempunyai tingkah laku yang unik berbanding bahasa lain. Walaupun mudah untuk menetapkan nilai lalai, ia harus digunakan dengan berhati-hati untuk mengelakkan hasil yang tidak dijangka dan penggantian nilai palsu.
Atas ialah kandungan terperinci Operator `||` JavaScript: Bagaimanakah Ia Berbeza daripada OR Logik Piawai?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!