2018.12.25筆記
《運算子》
運算子:
數學運算子:+ - * / % ++ --;
關係運算符:== != >= <= > <;
邏輯運算子:&& || !;
其他運算子:+= -= *= /= %= ?:;
三元運算子:
語法: 條件 ? 結果1 : 結果2; 把條件寫在?的前面後面跟著用:
例子1:
<script type="text/javascript">
if(exp){
exp為true的程式碼段;
}else{
exp為false的程式碼段;
}
exp1?exp2:exp3;
第一種寫法: if(3>1){
document.write('aa');
}else{
document.write('bb');
}
第二種寫法: 3>1?document.write('aa'):document.write('bb');
第三種寫法: var res=3>1?'aa':'bb';
document.write(res);
</script>
結果:aa
例子2:
var x=0/0; ------x = NaN
res=!isNaN(x)?0:x;
alert(res);
結果:NaN
邏輯運算子:
1、||(邏輯或), 從字面上來說,兩個表達中有一個為true,整個結果為true。只有前後都是false的時候才返回false,否則返回true。
alert(true || true); //true
alert(true || false); //true
alert(false || true); //true
alert(false || false); //false
alert(0 || 1); 前面0=falsr(0),後面1=true(1),答案是ture,返回結果也就是1
如果第一個表示式為true,整個結果為true,把第二個表示式短路了
只要“||”前面為false ,無論“||”後面是true還是false,結果都返回“||”後面的值。
只要“||”前面為true ,無論“||”後面是true還是false,結果都返回“||”前面的值。
2、&&(邏輯與),從字面上來說,只有前後都是true的時候才返回true,否則返回false。
alert(true && true); //true
alert(true && false); //false
alert(false && true); //false
alert(false && false); //false
如果第一個表示式為false,整個結果為false,就把第二個表示式短路了
只要“&&”前面是false,無論“&&”後面是true還是false,結果都返回“&&”前面的值。
只要“&&”前面是true,無論“&&”後面是true還是false,結果都將返回“&&”後面的值。
3、邏輯非“!”: 邏輯取反, false變true,true變false,
alert(!true);
alert(!false);
自增自減運算子:
自增“++”,自增+1,
自減“- -”,自減 -1,
還沒有結束!!!!!!!!!!!!!!!!!!!!!!!!!明天接著寫><