Movatterモバイル変換


[0]ホーム

URL:


MDN Web Docs

Atomics.and()

BaselineWidely available

TheAtomics.and() staticmethod computes a bitwise AND with a given value at a given position in the array, andreturns the old value at that position. This atomic operation guarantees that no otherwrite happens until the modified value is written back.

Try it

// Create a SharedArrayBuffer with a size in bytesconst buffer = new SharedArrayBuffer(16);const uint8 = new Uint8Array(buffer);uint8[0] = 7;// 7 (0111) AND 2 (0010) = 2 (0010)console.log(Atomics.and(uint8, 0, 2));// Expected output: 7console.log(Atomics.load(uint8, 0));// Expected output: 2

Syntax

js
Atomics.and(typedArray, index, value)

Parameters

typedArray

An integer typed array. One ofInt8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,BigInt64Array, orBigUint64Array.

index

The position in thetypedArray to compute the bitwise AND.

value

The number to compute the bitwise AND with.

Return value

The old value at the given position(typedArray[index]).

Exceptions

TypeError

Thrown iftypedArray is not one of the allowed integer types.

RangeError

Thrown ifindex is out of bounds in thetypedArray.

Description

The bitwise AND operation only yields 1, if botha andb are1. The truth table for the AND operation is:

aba & b
000
010
100
111

For example, a bitwise AND of5 & 1 results in0001 whichis 1 in decimal.

5  01011  0001   ----1  0001

Examples

Using and()

js
const sab = new SharedArrayBuffer(1024);const ta = new Uint8Array(sab);ta[0] = 5;Atomics.and(ta, 0, 1); // returns 5, the old valueAtomics.load(ta, 0); // 1

Specifications

Specification
ECMAScript® 2026 Language Specification
# sec-atomics.and

Browser compatibility

See also

Help improve MDN

Learn how to contribute.

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp