Dalam JavaScript, pengendali ternary tidak mempunyai tanda yang sama Ia terdiri daripada tanda soal dan bertindih Format sintaks ialah "Ungkapan bersyarat? Ungkapan 1: Ungkapan 2;" jika "Ungkapan bersyarat Jika hasil "ungkapan" adalah benar (benar), maka kod dalam "ungkapan 1" akan dilaksanakan, jika tidak, kod dalam "ungkapan 2" akan dilaksanakan.
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi JavaScript 1.8.5, komputer Dell G3.
Pengendali ternary dalam JavaScript
Pengendali ternary (juga dikenali sebagai operator ternary, operator bersyarat), Ia terdiri daripada tanda soal dan titik bertindih , dan format sintaks adalah seperti berikut:
条件表达式 ? 表达式1 : 表达式2 ;
"Ungkapan bersyarat" mestilah ungkapan Boolean, manakala "Ungkapan 1" dan "Ungkapan 2" adalah daripada sebarang nilai jenis.
Jika hasil "ungkapan bersyarat" adalah benar (benar), kod dalam "ungkapan 1" dilaksanakan dan nilai ungkapan dikembalikan.
Jika hasil "ungkapan bersyarat" adalah palsu (palsu), kod dalam "ungkapan 2" dilaksanakan dan nilai ungkapan dikembalikan.
Contoh:
Tentukan pembolehubah a, kemudian semak sama ada a diberikan nilai, jika ditetapkan, gunakan nilai sebaliknya tetapkan nilai lalai.
var a = null; //定义变量a typeof a != "undefined" ? a = a : a = 0; //检测变量a是否赋值,否则设置默认值 console.log(a); //显示变量a的值,返回null
Operator bersyarat boleh ditukar kepada struktur bersyarat:
if(typeof a != "undefined"){ //赋值 a = a; }else{ //没有赋值 a = 0; } console.log(a);
juga boleh ditukar kepada ungkapan logik:
(typeof a != "undefined") && (a =a) || (a = 0); //逻辑表达式 console.log(a);
Dalam perkara di atas ungkapan, Jika a telah diberikan nilai, ungkapan (a = a) akan dilaksanakan Selepas pelaksanaan, ungkapan (a = 0) berikutan operator OR logik tidak akan dilaksanakan lagi jika a belum diberikan nilai , ungkapan yang mengikuti operator logik DAN tidak akan dilaksanakan lagi ungkapan (a = a), seterusnya melaksanakan ungkapan mengikut operator OR logik (a = 0).
[Pembelajaran yang disyorkan: Tutorial JavaScript Lanjutan]
Atas ialah kandungan terperinci Berapa banyak tanda sama yang ada pada pengendali ternary javascript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!