Atomics - store() Method



store method stores a value at provided location in an array and returns the same. This atomic operation ensures that no other write can happen until the modified value is written back.

Syntax

Atomics.store(typedArray, index, value)

Parameters

  • typedArray is the integer typed array.

  • index is position in typedarray where value to be stored.

  • value to be stored.

Return

Returns value stored at given position.

Exceptions

  • TypeError in case passed array is not a integer typed array.

  • RangeError if index passed is out of bound in typed array.

Example

Following is the code for implementing 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.store(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.store(arr, 0, 2) + '<br/>'
            + Atomics.load(arr, 0);
         }
      </script>
   </body>
</html>

Output

Verify the result.

Advertisements