[JS] if…else…的簡短寫法
雖然簡寫真的很方便~不過根據 Coding style 和個人習慣,有時並不建議使用,但瞭解一下還是多少有些幫助囉。
定義變數
var a = 1, b = 0 , c = "";
單一 if 的情況
if (a) {
c = 'OK';
}
// 簡寫
// `?:`為三元運算子(Ternary Operator)
a && (c = 'OK');
a ? (c= 'OK') : '';
if…else… 的情況
if (a) {
b = 1;
c = 'nice';
} else {
b = 2;
c = 'bad';
}
// 簡寫
// `?:`為三元運算子(Ternary Operator)
a ? ( (b = 1), (c = 'nice') ) : ( (b = 2), (c = 'bad') );
檢查變數並設定初始值
if (!b) {
b = 2;
}
// 簡寫
b || (b = 2);
多個條件的情況
function getA () {
if (a === 0) {
return 'a is zero.';
} else if (a === 1) {
return 'a is one.';
} else {
return 'a is not 0 nor 1.';
}
}
// 簡寫
// `?:`為三元運算子(Ternary Operator)
function getA () {
return (a === 0) ? 'a is zero' : (a === 1) ? 'a is one' : 'other';
}