Atomics.xor()
基线 广泛可用
此功能已相当成熟,可在许多设备和浏览器版本中正常使用。自 2021 年 12 月.
报告反馈
试用
语法
Atomics.xor()
静态方法计算数组中给定位置的值的按位异或运算,并返回该位置的旧值。此原子操作保证在修改后的值写回之前不会发生其他写入。Atomics.xor(typedArray, index, value)
js
要与其计算按位异或运算的数字。
返回值
给定位置的旧值 (typedArray[index]
)。
异常
-
TypeError
如果
typedArray
不是允许的整数类型之一,则抛出。-
RangeError
描述
如果 index
超出 typedArray
的范围,则抛出。
如果 |
a |
b |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
a ^ b
5 0101 1 0001 ---- 4 0100
示例
例如,5 ^ 1
的按位异或运算的结果为 0100
,十进制表示为 4。
Atomics.xor()
静态方法计算数组中给定位置的值的按位异或运算,并返回该位置的旧值。此原子操作保证在修改后的值写回之前不会发生其他写入。const sab = new SharedArrayBuffer(1024);
const ta = new Uint8Array(sab);
ta[0] = 5;
Atomics.xor(ta, 0, 1); // returns 5, the old value
Atomics.load(ta, 0); // 4
规范
使用异或运算 |
---|
规范 # ECMAScript 语言规范 |
浏览器兼容性
sec-atomics.xor