按位异或赋值运算符 (^=)

**按位异或赋值 (^=)** 运算符对两个操作数执行 按位异或,并将结果分配给左操作数。

试试看

语法

js
x ^= y

描述

x ^= y 等同于 x = x ^ y,除了表达式 x 仅被评估一次。

示例

使用按位异或赋值

js
let a = 5; // (00000000000000000000000000000101)
a ^= 3; // (00000000000000000000000000000011)

console.log(a); // 6 (00000000000000000000000000000110)

let b = 5; // (00000000000000000000000000000101)
b ^= 0; // (00000000000000000000000000000000)

console.log(b); // 5 (00000000000000000000000000000101)

let c = 5n;
c ^= 3n;
console.log(c); // 6n

规范

规范
ECMAScript 语言规范
# sec-assignment-operators

浏览器兼容性

BCD 表格仅在浏览器中加载

另请参阅