Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
Atomics.add()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since Dezember 2021.
DieAtomics.add() statische Methode fügt an einer gegebenen Position im Array einen Wert hinzu und gibt den alten Wert an dieser Position zurück. Diese atomare Operation stellt sicher, dass kein anderer Schreibvorgang stattfindet, bis der geänderte Wert zurückgeschrieben wird.
In diesem Artikel
Probieren Sie es aus
// Create a SharedArrayBuffer with a size in bytesconst buffer = new SharedArrayBuffer(16);const uint8 = new Uint8Array(buffer);uint8[0] = 7;// 7 + 2 = 9console.log(Atomics.add(uint8, 0, 2));// Expected output: 7console.log(Atomics.load(uint8, 0));// Expected output: 9Syntax
Atomics.add(typedArray, index, value)Parameter
typedArrayEin Integer-Typ-Array. Eines von
Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,BigInt64ArrayoderBigUint64Array.indexDie Position im
typedArray, an der einvaluehinzugefügt wird.valueDie Zahl, die hinzugefügt werden soll.
Rückgabewert
Der alte Wert an der angegebenen Position (typedArray[index]).
Ausnahmen
TypeErrorWird ausgelöst, wenn
typedArraynicht einer der erlaubten Integer-Typen ist.RangeErrorWird ausgelöst, wenn
indexaußerhalb des zulässigen Bereichs imtypedArrayliegt.
Beispiele
>Verwendung von add()
const sab = new SharedArrayBuffer(1024);const ta = new Uint8Array(sab);Atomics.add(ta, 0, 12); // returns 0, the old valueAtomics.load(ta, 0); // 12Spezifikationen
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-atomics.add> |