新的逻辑操作符


# 新的逻辑操作符

新特性结合了逻辑运算符(&&||??)和赋值表达式:

# 逻辑与赋值

逻辑与赋值运算符(x &&= y)仅在 x真值 (opens new window)(在 Boolean 上下文中认定为 true 的值)时赋值。

x &&= y
//等价于
x = x && (x = y)
1
2
3

# 逻辑或赋值

逻辑或赋值运算符(x ||= y)仅在 x虚值 (opens new window)(在 Boolean 上下文中认定为 false 的值)时赋值。

x ||= y
//等价于
x = x || (x = y)
1
2
3

# 逻辑空赋值

逻辑空赋值运算符(x ??= y)仅在 x 是 nullish(nullundefined)时对其赋值。

x ??= y
//等价于
x = x ?? (x = y)
1
2
3

# 参考资料

(完)