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, ou Uint32Array.

index

A posição no typedArray onde o value 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 o typedArray não for um dos tipos de inteiro permitidos.
  • Lança uma exceção TypeError, se o typedArray não for tipo array tipado compartilhado.
  • Lança uma exceção RangeError, se o index estiver fora dos limites no typedArray.

Exemplos

js
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

Veja também