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 December 2021.
Статический метод Atomics.add()
добавляет значение к текущему по указанной позиции в массиве и возвращает предыдущее значение в этой позиции. Эта атомарная операция гарантирует, что никакой другой записи не произойдёт, пока изменённое значение не будет записано обратно.
Синтаксис
Atomics.add(typedArray, index, value)
Параметры
typedArray
-
Разделённый массив целых чисел.
Int8Array
,Uint8Array
,Int16Array
,Uint16Array
,Int32Array
илиUint32Array
. index
-
Позиция в
typedArray
для добавленияvalue
. value
-
Число для добавления.
Возвращаемое значение
Предыдущее значение в указанной позиции (typedArray[index]
).
Исключения
- Выбрасывает
TypeError
, если типtypedArray
не является одним из допустимых целочисленных типов. - Выбрасывает
TypeError
, если типtypedArray
не общего типа. - Выбрасывает
RangeError
, еслиindex
внеtypedArray
.
Примеры
var sab = new SharedArrayBuffer(1024);
var ta = new Uint8Array(sab);
Atomics.add(ta, 0, 12); // возвращает 0, предыдущее значение
Atomics.load(ta, 0); // 12
Спецификации
Specification |
---|
ECMAScript Language Specification # sec-atomics.add |
Совместимость с браузерами
BCD tables only load in the browser