Atomics.exchange()
Atomics.exchange()
정적 메서드는 배열의 지정된 위치에 지정된 값을 저장하고 해당 위치의 이전 값을 반환합니다.
이 아토믹 연산은 이전 값의 읽기와 새 값의 쓰기 사이에 다른 쓰기가 발생하지 않는 것을 보장합니다.
시도해보기
구문
Atomics.exchange(typedArray, index, value)
매개변수
typedArray
-
정수 타입의 배열.
Int8Array
,Uint8Array
,Int16Array
,Uint16Array
,Int32Array
,Uint32Array
,BigInt64Array
,BigUint64Array
중 하나. index
-
value
를 교환할typedArray
의 위치. value
-
교환할 숫자.
반환 값
해당 위치의 예전 값(typedArray[index]
).
예외
typedArray
가 허용하는 정수 타입이 아닐 경우TypeError
가 발생합니다.index
가 해당typedArray
를 벗어나는 경우RangeError
가 발생합니다.
예제
exchange() 사용하기
const sab = new SharedArrayBuffer(1024);
const ta = new Uint8Array(sab);
Atomics.exchange(ta, 0, 12); // returns 0, the old value
Atomics.load(ta, 0); // 12
명세서
Specification |
---|
ECMAScript Language Specification # sec-atomics.exchange |
브라우저 호환성
BCD tables only load in the browser