简记 JS中 ?? 和 || 及 !!

52 阅读1分钟

1.控制合并操作符 ?? 与 逻辑或 || 的相同点:

用法相同,都是前后是值,根据前面的值来判断最终返回前面的值还是后面的值

a ?? b
a || b

2.操作符 ?? 与 || 的不相同点:

  • 使用  ??  时,只有当 a 为 null 或 undefined 时才返回 b (判断是否为空值)
  • 使用  ||  时,只有当 a 为 false  时才返回 b (判断真假 0 、'' 也是假值)

3 操作符 !!

将表达式强制转化为bool值的运算,运算结果为true或false,表达式是什么值,结果就是对应的bool值,不再取非