Atomics - metodo xor ()
xorIl metodo calcola lo XOR bit per bit con un valore fornito in una data posizione nell'array. Restituisce il vecchio valore in quella posizione. Questa operazione atomica garantisce che nessun'altra scrittura possa avvenire fino a quando il valore modificato non viene riscritto.
Sintassi
Atomics.xor(typedArray, index, value)
Parametri
typedArray è l'array intero digitato.
index è la posizione in typedarray.
value con cui calcolare XOR bit per bit.
Ritorno
Restituisce il vecchio valore in una data posizione.
Eccezioni
TypeError nel caso in cui l'array passato non sia un array di tipo intero.
RangeError se l'indice passato è fuori limite nell'array digitato.
Esempio
Di seguito è riportato il codice per l'implementazione di 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.xor(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;
//6 xor 2 = 110 xor 010 = 100 = 4
container.innerHTML = Atomics.xor(arr, 0, 2) + '<br/>' + Atomics.load(arr, 0);
}
</script>
</body>
</html>
Produzione
Verifica il risultato.