Skip to content

逻辑赋值操作符 ??=、&&=、||=

主要参考于 += 、 -= 操作,延伸到了 ?? 、|| 、 &&

??=

语法:

js
value ??= any // ===  value = value ?? any

栗子

js
let num = 0;
num ??= 1;
console.log(num)  // 结果为 0 

let num1 = null;
num1 ??= 1;
console.log(num1) // 结果为 1

&&=

语法:

js
value &&= any // ===  value = value && any

栗子

js
let num = 0;
num &&= 1;
console.log(num)  // 结果为 0

let num1 = null;
num1 &&= 1;
console.log(num1) // 结果为 null

||=

语法:

js
value ||= any // ===  value = value || any

栗子

js
let num = 0;
num ||= 1;
console.log(num)  // 结果为 1

let num1 = null;
num1 ||= 1;
console.log(num1) // 结果为 1

总结

  1. 只要记住其逻辑跟 += 相同即可

  2. 主要记住 ??||&& 的区别