Atomics.and()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since December 2021.
Die statische Methode Atomics.and()
berechnet ein bitweises UND mit einem gegebenen Wert an einer bestimmten Position im Array und gibt den alten Wert an dieser Position zurück. Diese atomare Operation garantiert, dass kein anderer Schreibvorgang erfolgt, bis der modifizierte Wert zurückgeschrieben wird.
Probieren Sie es aus
Syntax
Atomics.and(typedArray, index, value)
Parameter
typedArray
-
Ein Integer-Typ-Array. Eines von
Int8Array
,Uint8Array
,Int16Array
,Uint16Array
,Int32Array
,Uint32Array
,BigInt64Array
, oderBigUint64Array
. index
-
Die Position im
typedArray
, an der das bitweise UND berechnet werden soll. value
-
Die Zahl, mit der das bitweise UND berechnet werden soll.
Rückgabewert
Der alte Wert an der angegebenen Position
(typedArray[index]
).
Ausnahmen
TypeError
-
Wird ausgelöst, wenn
typedArray
nicht eine der erlaubten Integer-Typen ist. RangeError
-
Wird ausgelöst, wenn
index
außerhalb der Grenzen destypedArray
liegt.
Beschreibung
Die bitweise UND-Operation ergibt nur dann 1, wenn sowohl a
als auch b
1 sind. Die Wahrheitstabelle für die UND-Operation lautet:
a |
b |
a & b |
---|---|---|
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Zum Beispiel führt ein bitweises UND von 5 & 1
zu 0001
, was
im Dezimalsystem 1 ist.
5 0101 1 0001 ---- 1 0001
Beispiele
Verwendung von and()
const sab = new SharedArrayBuffer(1024);
const ta = new Uint8Array(sab);
ta[0] = 5;
Atomics.and(ta, 0, 1); // returns 5, the old value
Atomics.load(ta, 0); // 1
Spezifikationen
Specification |
---|
ECMAScript Language Specification # sec-atomics.and |
Browser-Kompatibilität
BCD tables only load in the browser