ES2020 引入了nullish 合并运算符 ( ??
),如果左操作数为 null 或未定义,则返回右操作数。此功能类似于逻辑 OR 运算符 ( ||
)。例如,以下表达式返回相同的结果。
const a = undefined
const b = "B"
const orOperator = a || b
const nullishOperator = a ?? b
console.log({ orOperator, nullishOperator })
结果:
{
orOperator:"B",
nullishOperator:"B"
}
那么nullish 运算符有何不同,它的用例是什么?