JavaScript几个特殊运算符的用法
注:JavaScript中null,undefined,false,"",NaN
都会被判定为false
||
和??
的区别
||
和??
主要用于默认值的赋值
// || 运算符
const vaule = a || b; // 当左侧为 null,undefined,"",false,NaN时,右侧的值会生效
// ?? 运算符
const value = a ?? b; // 当且仅当左侧的值为 null 或 undefined时,右侧的值才会生效
&&
运算符
&&
运算符一般用于短路判断,也可用于默认值的赋值
a && b; // 当且仅当 a的判断值为true时,才会执行b语句
const value = a && b; // 当且仅当 a的判断值为true时,才会将b赋值给value,否则将a赋值给value
!!
运算符
!!
运算符可以将值快速转换为它对应的判断值,可以在需要返回布尔值的数据遍历函数中使用(filter some find findIndex 等)
const a = null;
console.log(!!a); // 输出 false