新的逻辑操作符
# 新的逻辑操作符
新特性结合了逻辑运算符(&&,||,??)和赋值表达式:
# 逻辑与赋值
逻辑与赋值运算符(x &&= y)仅在 x 为真值 (opens new window)(在 Boolean 上下文中认定为 true 的值)时赋值。
x &&= y
//等价于
x = x && (x = y)
1
2
3
2
3
# 逻辑或赋值
逻辑或赋值运算符(x ||= y)仅在 x 为虚值 (opens new window)(在 Boolean 上下文中认定为 false 的值)时赋值。
x ||= y
//等价于
x = x || (x = y)
1
2
3
2
3
# 逻辑空赋值
逻辑空赋值运算符(x ??= y)仅在 x 是 nullish(null 或 undefined)时对其赋值。
x ??= y
//等价于
x = x ?? (x = y)
1
2
3
2
3
# 参考资料
(完)