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.
O método estátitico Atomics.add()
adiciona um dado valor em uma determinada posição no array e retorna o valor antigo daquela posição. Esta operação atômica garante que nenhuma outra escrita ocorra até que o valor modificado seja escrito de volta.
Sintaxe
Atomics.add(typedArray, index, value)
Parâmetros
typedArray
-
Um array tipado de inteiros compartilhado. Pode ser
Int8Array
,Uint8Array
,Int16Array
,Uint16Array
,Int32Array
, ouUint32Array
. index
-
A posição no
typedArray
onde ovalue
será adicionado. value
-
Número que será adicionado.
Valor de retorno
O valor antigo na determinada posição (typedArray[index]
).
Exceções
- Lança uma exceção
TypeError
, se otypedArray
não for um dos tipos de inteiro permitidos. - Lança uma exceção
TypeError
, se otypedArray
não for tipo array tipado compartilhado. - Lança uma exceção
RangeError
, se oindex
estiver fora dos limites notypedArray
.
Exemplos
var sab = new SharedArrayBuffer(1024);
var ta = new Uint8Array(sab);
Atomics.add(ta, 0, 12); // retorna 0, o valor antigo
Atomics.load(ta, 0); // 12
Especificações
Specification |
---|
ECMAScript Language Specification # sec-atomics.add |
Compatibilidade com navegadores
BCD tables only load in the browser