Baseline Widely available
Atomics.and()
ã¯éçã¡ã½ããã§ãé
åå
ã®æå®ããä½ç½®ã®å¤ã«æå®ããå¤ã§ãããåä½ã® AND ãè¨ç®ãããã®ä½ç½®ã®å¤ãå¤ãè¿ãã¾ããããã¯ä¸å¯åæä½ã§ãä¿®æ£ãããå¤ãæ¸ãæ»ãããã¾ã§ãä»ã®æ¸ãè¾¼ã¿ãèµ·ãããªããã¨ãä¿è¨¼ãã¾ãã
// ãã¤ãåä½ã§ãµã¤ãºãæå®ã㦠SharedArrayBuffer ã使
const 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));
// äºæ³ãããçµæ: 7
console.log(Atomics.load(uint8, 0));
// äºæ³ãããçµæ: 2
æ§æ
Atomics.and(typedArray, index, value)
弿°
typedArray
å
±ææ´æ°ã®åä»ãé
åã§ãã Int8Array
, Uint8Array
, Int16Array
, Uint16Array
, Int32Array
, Uint32Array
, BigInt64Array
, BigUint64Array
ã®ä½ããã§ãã
index
typedArray
ã§ãããåä½ã® AND ãè¨ç®ããä½ç½®ã§ãã
value
ãããåä½ã® AND ãåãæ°å¤ã§ãã
æå®ãããä½ç½® (typedArray[index]
) ã«ãã£ãå¤ãå¤ã§ãã
TypeError
typedArray
ã許å¯ãããæ´æ°åã®ãããã§ããªãå ´åã«çºçãã¾ãã
RangeError
index
ã typedArray
ã®ç¯å²ãè¶
ãã¦ããå ´åã«çºçãã¾ãã
ãããåä½ã® AND æä½ã¯ã a
㨠b
ã®ä¸¡æ¹ã 1 ã§ãã£ãå ´åã®ã¿ 1 ãçæãã¾ãã AND æä½ã®ççå¤è¡¨ã示ãã¾ãã
a
b
a & b
0 0 0 0 1 0 1 0 0 1 1 1
ä¾ãã°ããããåä½ã® AND ã 5 & 1
ã§è¡ãã¨ãçµæã¯ 0001
ããªãã¡ 10 鲿°ã§ 1 ã¨ãªãã¾ãã
5 0101 1 0001 ---- 1 0001ä¾ and() ã®ä½¿ç¨
const sab = new SharedArrayBuffer(1024);
const ta = new Uint8Array(sab);
ta[0] = 5;
Atomics.and(ta, 0, 1); // å¤ãå¤ã§ãã 5 ãè¿ã
Atomics.load(ta, 0); // 1
仿§æ¸ ãã©ã¦ã¶ã¼ã®äºææ§ é¢é£æ
å ±
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4