Documentación offline JavaScript main

Atomics.store()

main Documentación oficial Licencia CC-BY-SA-2.5Descargado el 2026-08-02

En esta página

The Atomics.store() static method stores a given value at a given position in the array and returns that value. This atomic operation guarantees that the write is tear-free, and that all atomic writes are sequentially consistent.

Note that unlike many other Atomic methods, store() returns the new value instead of the old value. To get the old value, use {{jsxref("Atomics.exchange()")}} instead.

Syntax#

Atomics.store(typedArray, index, value)

Parameters#

  • typedArray
  • : An integer typed array. One of {{jsxref("Int8Array")}}, {{jsxref("Uint8Array")}}, {{jsxref("Int16Array")}}, {{jsxref("Uint16Array")}}, {{jsxref("Int32Array")}}, {{jsxref("Uint32Array")}}, {{jsxref("BigInt64Array")}}, or {{jsxref("BigUint64Array")}}.
  • index
  • : The position in the typedArray to store a value in.
  • value
  • : The number to store.

Return value#

The value that has been stored.

Exceptions#

  • {{jsxref("TypeError")}}
  • : Thrown if typedArray is not one of the allowed integer types.
  • {{jsxref("RangeError")}}
  • : Thrown if index is out of bounds in the typedArray.

Examples#

Note that these examples cannot be run directly from the console or an arbitrary web page, because SharedArrayBuffer is not defined unless its security requirements are met.

Using Atomics.store()#

// Create a SharedArrayBuffer with a size in bytes
const sab = new SharedArrayBuffer(1024);
const ta = new Uint8Array(sab);

console.log(Atomics.store(ta, 0, 12)); // 12, the new/current value
console.log(Atomics.load(ta, 0)); // 12, the new/current value

Specifications#

{{Specifications}}

Browser compatibility#

{{Compat}}

See also#

  • {{jsxref("Atomics")}}
  • {{jsxref("Atomics.load()")}}
  • {{jsxref("Atomics.exchange()")}}