--- title: Atomics.exchange() slug: Web/JavaScript/Reference/Global_Objects/Atomics/exchange tags: - Atomics - JavaScript - Method - Shared Memory translation_of: Web/JavaScript/Reference/Global_Objects/Atomics/exchange ---
{{JSRef}}

Die statische Atomics.exchange() Methode ersetzt einen Wert an einer gegebenen Position im einem Array mit einem gegebene Wert aus. Die atomare Operation garantiert, dass kein anderer Schreibprozess während der Operation durchgeführt wird.

{{EmbedInteractiveExample("pages/js/atomics-exchange.html")}}

Syntax

Atomics.compareExchange(typedArray, index, value)

Parameter

typedArray
Ein geteiltes getrypted Integer Array. Eines von {{jsxref("Int8Array")}}, {{jsxref("Uint8Array")}}, {{jsxref("Int16Array")}}, {{jsxref("Uint16Array")}}, {{jsxref("Int32Array")}} oder {{jsxref("Uint32Array")}}.
index
Die Position in typedArray, an den ein Wert ersetzt wird.
value
Neu Zahl, die geschreiben wird.

Rückgabewert

Der alte Wert an der gegebenen Position (typedArray[index]).

Exceptions

Beispiele

var sab = new SharedArrayBuffer(1024);
var ta = new Uint8Array(sab);

Atomics.compareExchange(ta, 0, 12); // returns 0, the old value
Atomics.load(ta, 0); // 12

Spezifikationen

Spezifikation Status Kommentar
{{SpecName('ESDraft', '#sec-atomics.exchange', 'Atomics.exchange')}} {{Spec2('ESDraft')}} Initiale Definition in ES2017.

Browserkompatibilität

{{Compat("javascript.builtins.Atomics.exchange")}}

Siehe auch