--- title: Atomics.xor() slug: Web/JavaScript/Reference/Global_Objects/Atomics/xor tags: - Atomics - JavaScript - Method - Shared Memory translation_of: Web/JavaScript/Reference/Global_Objects/Atomics/xor ---
Die statische Atomics
.xor()
Methode berechnet eine bitweises XOR mit einem gegebenen Wert auf einem Wert an einer gegebenen Position im Array und gibt den alten Wert an der Position zurück. Die atomare Operation garantiert, dass kein anderer Schreibprozess während der Operation durchgeführt wird.
Atomics.and(typedArray, index, value)
typedArray
index
typedArray
, mit der das bitweise XOR berechnet wird.value
Der alte Wert an der gegebenen Position (typedArray[index]
).
typedArray
nicht von einem erlaubten Integer Typ ist.typedArray
kein geteilter Arraytyp ist.index
nicht in den Grenzen von typedArray
ist.Die bitweise XOR Operation ergibt nur 1, wenn genau ein Werte, a
oder b
, 1 ist. Die Wahrheitstabelle für die XOR Operation ist:
a |
b |
a & b |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Zum Beispiel resultiert ein bitweises XOR auf 5 & 1
in 0100
, was im Dezimalsystem 4 ist.
5 0101 1 0001 ---- 4 0100
var sab = new SharedArrayBuffer(1024); var ta = new Uint8Array(sab); ta[0] = 5; Atomics.xor(ta, 0, 1); // returns 5, the old value Atomics.load(ta, 0); // 4
Spezifikation | Status | Kommentar |
---|---|---|
{{SpecName('ESDraft', '#sec-atomics.xor', 'Atomics.xor')}} | {{Spec2('ESDraft')}} | Initiale Definition in ES2017. |
{{Compat("javascript.builtins.Atomics.xor")}}