Atomika - metoda wymiany ()
exchangemetoda zamienia daną wartość na danej pozycji tablicy. Zwraca starą wartość na tej pozycji. Ta niepodzielna operacja zapewnia, że żaden inny zapis nie zostanie wykonany, dopóki zmodyfikowana wartość nie zostanie z powrotem zapisana.
Składnia
Atomics.exchange(typedArray, index, value)
Parametry
typedArray jest tablicą wpisaną jako liczbę całkowitą.
index to pozycja w typedarray.
value na wymianę.
Powrót
Zwraca starą wartość na podanej pozycji.
Wyjątki
TypeError w przypadku, gdy przekazana tablica nie jest tablicą o typie liczby całkowitej.
RangeError jeśli przekazany indeks jest poza ograniczeniem we wpisanej tablicy.
Przykład
Poniżej znajduje się kod do implementacji JavaScript Atomics -
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Atomics Example</title>
<style>
.result {
font-size: 20px;
border: 1px solid black;
}
</style>
</head>
<body onLoad="operate();">
<h1>JavaScript Atomics Properties</h1>
<div class="result"></div>
<p>Atomics.exchange(arr, 0, 2)</p>
<p>Atomics.load(arr, 0)</p>
<script>
function operate(){
let container = document.querySelector(".result");
// create a SharedArrayBuffer
var buffer = new SharedArrayBuffer(25);
var arr = new Uint8Array(buffer);
// Initialise element at zeroth position of array with 6
arr[0] = 6;
container.innerHTML = Atomics.exchange(arr, 0, 2) + '<br/>' + Atomics.load(arr, 0);
}
</script>
</body>
</html>
Wynik
Sprawdź wynik.