JavaScript 空值合并赋值操作符(??=)

空值合并赋值操作符结合了空值合并操作符和赋值操作符。它用于将默认值分配给变量,仅当变量的值为 null 或 undefined 时。

语法:

x ??= y

比较:

// 旧语法
x || x = y
// 新语法 x ??= y
// 新语法等价于 if (x == null) { // <=> (x === null || x === undefined) x = y; }

示例:

let foo = null;
let bar = undefined;
let baz = 0;
foo ??= 'default'; // 'defoult',因为foo是null
bar ??= 'default'; // 'defoult',因为bar是undefined
baz ??= 'default'; // 0,因为baz的初始值不是null或者undefined

使用场景

在变量没有被赋值或被赋值为 null 或 undefined 时,将默认值分配给变量。

 

posted @ 2025-05-15 10:31  时光独醒  阅读(28)  评论(0)    收藏  举报