Spec-Zone.ru › JavaScript

Atomics.store()

Базовая поддержка Широко доступно

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и в различных версиях браузеров. Она доступна во всех браузерах с декабря 2021 года.

Статический метод Atomics.store() сохраняет заданное значение в заданной позиции массива и возвращает это значение. Эта атомарная операция гарантирует, что запись является неделимой (tear-free), и что все атомарные записи последовательно согласованы.

Обратите внимание, что, в отличие от многих других методов Atomic, store() возвращает новое значение вместо старого. Чтобы получить старое значение, используйте Atomics.exchange().

Синтаксис

Atomics.store(typedArray, index, value)

Параметры

typedArray
Типизированный массив целых чисел. Один из Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, BigInt64Array, или BigUint64Array.
index
Позиция в typedArray для сохранения value.
value
Число для сохранения.

Возвращаемое значение

Сохраненное значение.

Исключения

TypeError
Выбрасывается, если typedArray не является одним из разрешенных целочисленных типов.
RangeError
Выбрасывается, если index находится вне границ в typedArray.

Примеры

Обратите внимание, что эти примеры нельзя запустить непосредственно из консоли или произвольной веб-страницы, поскольку SharedArrayBuffer не определен, если не соблюдены его требования безопасности.

Использование 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

Спецификации

Спецификация
ECMAScript® 2027 Language Specification
# sec-atomics.store

Совместимость с браузерами

Настольные Мобильные Серверные
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari on iOS Samsung Internet WebView Android WebView on iOS Bun Deno Node.js
store
68
79
78
55
15.2
89
79
63
15.2
15.0
89
15.2
1.0.0
1.0
8.10.0

См. также

  • Atomics
  • Atomics.load()
  • Atomics.exchange()

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Atomics/store

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API