"?.","??","??=","!"基本用法
2022-05-17 本文已影响0人
可乐不可乐_6e02
空值合并操作符( ?? )ES2020
const a = b ?? c; // 解释为 如果b为null或undefined会给a赋值c,否则赋值为b,0 或 false都会赋值会b
逻辑空赋值( ??= )ES2022
let a = null;
a ??= b; // 解释为 当左侧仅为null或undefined时b赋值给a
可选链( ?. )ES2020
一般用于多级对象里无法判断当前对象是否为空的情况
const a=b?.c?.d; // 类似于 const a = b && b.c && b.c.d;
变量值可为空 ( ! )TypeScript
let x:number
x = null! // 如果不加!号会报错,加了!之后不会报错
let y:number = parma?.z! // ! 一般用于对变量赋值时,如果只是调用就不需要用!
- 常用判断
if((value??'') !== ''){
//...
}