Atomics.sub()
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.sub()
вычитает представленное значение из текущего по указанной позиции в массиве и возвращает предыдущее значение в этой позиции. Эта атомарная операция гарантирует, что никакой другой записи не произойдёт, пока изменённое значение не будет записано обратно.
Синтаксис
Atomics.sub(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);
ta[0] = 48;
Atomics.sub(ta, 0, 12); // возвращает 48, предыдущее значение
Atomics.load(ta, 0); // 36
Спецификации
Specification |
---|
ECMAScript Language Specification # sec-atomics.sub |
Совместимость с браузерами
BCD tables only load in the browser