运算符
逻辑运算符
- 与语法:布尔值(表达式) && 布尔值(表达式)
- 或语法:布尔值(表达式) || 布尔值(表达式)
- 非语法:布尔值(表达式) !布尔值(表达式)
逻辑运算符 返回的值都是布尔值
&&
||
!
与&&:两者都为真才为真 否则为假
或||:两者有一个为真 , 才是真
非!:置反
&&
//逻辑操作符与 两者都为真才返回真 true
console.log(true && true);true
console.log(true && false);false
console.log(false && true);false
console.log(false && false);false
NaN Undefined false null 都是负性
&&短路语法
console.log(true && err);控制台报错
console.log(NaN && err); // NaN 遇到 负性false 直接抛出来
console.log(true && 11); //第一个为true 就判断第二个 11为正性 就 抛出 11;
逻辑或 ||
//||当有一个为true 的情况下就是true;
console.log(true || true);true
console.log(true || false);true
console.log(false | | true);true
console.log(false | | false);false
|| 短路语法
console.log(true | | err); //true 遇到真直接抛出不管后面是什么
console.log(err | | true); //err 错误 就抛出 错误
console.log(NaN | | err); // 报错 一个NaN为负性 要判断第二个 不管为真假 err 报错
console.log(NaN | | 11); // 11一个NaN为负性 要判断第二个 不管为真假 抛出 11
console.log(true || 11); //第一个为true 就抛出true
!置反 两个!! 验证 自身 布尔值
!null //true
!!null // fasle