&&運算規律
&& 運算子的 運算顧慮
1;從左往右依次運算,第乙個是true 進行下乙個;遇到第乙個false 時候;返回false
如果一直都沒有false; 最後乙個是表示式;返回 表示式運算結果;
左後乙個如果是js 資料直接返回資料
var res = 2>1 && null==null && 2-1
console.log(res)
res2 = ==='' && 3*1 && 'a'>'b'
res2 = ==='' && 3 && 'a'>'b'
res2 = ==='' && 3 && 'a'>'b'
var a = 20;
var res = (a % 4 == 0 && a % 100 != 0)&& a % 400 == 0;
res = (0 == 0 && 20 % 100 != 0)&& 20 % 400 == 0;
res = (true && 20 % 100 != 0)&& 20 % 400 == 0;
res = (true && 20 != 0)&& 20 % 400 == 0;
res = (true && true)&& 20 % 400 == 0;
res = true && 20 % 400 == 0;
res = true && 20 == 0;
res = true && false;
res = false
/*||運算子的 運算顧慮
1;從左往右依次運算,第乙個是false 進行下乙個;遇到第乙個true 時候;返回false
如果一直都沒有true; 最後乙個是表示式;返回 表示式運算結果;
後後乙個如果是 資料直接返回資料
*/var a = 20
var res = (a % 4 == 0 || a % 100 != 0) || a % 400 == 0;
res = (20 % 4 == 0 || 20 % 100 != 0) || 20 % 400 == 0;
res = (true == 0 || 20 % 100 != 0) || 20 % 400 == 0;
res = (true || 20% 100 != 0) || 20 % 400 == 0;
res = (true) || 20 % 400 == 0;
res = true || 20 % 400 == 0;
res = true
// var res = undefined || null // null
// var res = null || false // false
// var res = false || '' // ''
// var res = '' || 0 // 0
var res = undefined || null || false || '' || 0;
res = null || false || '' || 0 ;
res = false || '' || 0 ;
res = '' || 0 ;
res = 0
! 單目運算子 只有2個結果 參考其他型別轉化布林型別
除了null ,0,'',undefined,nan
var res = !'' // !false ---> true
var res = !''+1 //2
var res = 1+2+!0
res = 1+2+!false
res = 1+2+true
res = 4
var res = !1
res = !true
res = false
var res2 = !'ddd'
res = !true
res = false
var res3 = !null
res = !false
res = true
var res4 = !undefined
res = !false
res = true
var res5 = !''
res = !false
res = true
var res6 = !nan
res = !false
res = true
var res7 = 2-!'ddd'
res7 = 2-!true
res7 = 2-false
res7 = 2
var res9 =1+!''+3-1+''
res9 = 1+!false+3-1+''
res9 = 1+true+3-1+''
res9 = 1+1+3-1+''
res9 = '4'
var res8 = {}> && 2>1 || 『dd』>『aa』 || !』』
res8 = '[objectobject]'>'' && 2>1 || 'dd'>'aa' || !''
res8 = true && 2>1 || 'dd'>'aa' || !''
res8 = true && true || 'dd'>'aa' || !''
res8 = true || 'dd'>'aa' || !''
res8 = true
var res = "aa" > "" && !(1 < 2 || (1 - 1 && > {})) && "" == ;
res = true && !(1 < 2 || (1 - 1 && > {})) && "" == ;
res = true && !(1 < 2|| (0 && > {})) && "" == ;
res = true && !(1 < 2|| (0 && false)) && "" == ;
res = true && !(1 < 2|| false) && "" == ;
res = true && !(true|| false) && "" == ;
res = true && !true && "" == ;
res = true && false && "" == ;
res = false
邏輯運算子( , )
操作!是的 運算子不執行布林操作,有只有乙個運算元,位於其權利,和唯一,它確實是逆是它的價值,生產假如果真實,真實的,如果其運算元其運算元為false。基本上,它返回布林值,評價其運算元相反。例如 1 2 3 4 5 5 evaluates to false because the expressi...
邏輯運算子
邏輯運算子 符號 作用 符號 作用 或and 與 或 not 非 或or 或 xor 異或 與 運算 1 或者 and 是 與 運算的兩種表達方式。如果所有資料不為0且不為空值 null 則結果返回1 如果存在任何乙個資料為0,則結果返回0 如果存在乙個資料null且沒有資料為0,結果返回null。...
邏輯運算子
邏輯與 當兩個運算元的值都為true時,運算結果為true 邏輯或 只要兩個運算元中有乙個值為true時,運算結果就為true 邏輯非 對運算元取反,即true值非運算的結果false,false值非運算的結果為true 案例 test1 var a 1,b 0,c hello a b c worl...