ãããè«çåæ¼ç®å (|)
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2015å¹´7æ.
ãããè«çåæ¼ç®å (|) ã¯ã両æ¹ã®ãªãã©ã³ãã®å¯¾å¿ãããããã®ã©ã¡ãã䏿¹ã 1 ã§ããä½ç½®ã®ãããã§ 1 ãè¿ãã¾ãã
試ãã¦ã¿ã¾ããã
const a = 5; // 00000000000000000000000000000101
const b = 3; // 00000000000000000000000000000011
console.log(a | b); // 00000000000000000000000000000111
// äºæ³ãããçµæ: 7
æ§æ
x | y
解説
| æ¼ç®åã¯ãæ°å¤ã¨é·æ´æ°ã® 2 種é¡ã®ãªãã©ã³ãã«å¯¾ãã¦ãªã¼ãã¼ãã¼ãããã¦ãã¾ããæ°å¤ã®å ´åããã®æ¼ç®å㯠32 ãããæ´æ°ãè¿ãã¾ããé·æ´æ°ã®å ´åãæ¼ç®åã¯é·æ´æ°ãè¿ãã¾ããæåã®ãªãã©ã³ããæ°å¤åã«å¤æãããã®åãæ¤æ»ãã¾ãããªãã©ã³ããé·æ´æ°ã«ãªã£ãå ´åãé·æ´æ°ã® OR ãå®è¡ãã¾ããããã§ãªãå ´åããªãã©ã³ãã 32 ãããæ´æ°ã«å¤æããæ°å¤ã®ãããåä½ã® OR ãå®è¡ãã¾ãããã䏿¹ã®ãªãã©ã³ããé·æ´æ°ã«ãªãããã䏿¹ãæ°å¤ã«ãªãå ´åã¯ã TypeError ãçºçãã¾ãã
ãã®æ¼ç®åã¯ããªãã©ã³ãã®ããã表ç¾ã 2 ã®è£æ°ã§æä½ãã¾ããæåã®ãªãã©ã³ãã®ããããã®ãããã¯ã対å¿ãã 2 ã¤ç®ã®ãªãã©ã³ãã®ãããã¨ã 1 çªç®ã®ãããå士ã 2 çªç®ã®ãããå士ã¨ããããã«ãã¢ã«ãªãã¾ããæ¼ç®ã¯ããããã®ãããã®ãã¢ã«é©ç¨ãããçµæã¯ãããåä½ã§æ§ç¯ããã¾ãã
OR æ¼ç®ã®ççå¤è¡¨ã¯æ¬¡ã®ããã«ãªãã¾ãã
| a | b | a OR b |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
9 (10 鲿°) = 00000000000000000000000000001001 (2 鲿°)
14 (10 鲿°) = 00000000000000000000000000001110 (2 鲿°)
--------------------------------
14 | 9 (10 鲿°) = 00000000000000000000000000001111 (2 鲿°) = 15 (10 鲿°)
æ°å¤ã 32 ããããè¶ ããå ´åãæä¸ä½ããããåãæ¨ã¦ããã¾ããä¾ãã°ã次㮠32 ããããè¶ ããæ´æ°ã¯ã 32 ãããæ´æ°ã«å¤æããã¾ãã
夿å: 11100110111110100000000000000110000000000001 夿å¾: 10100000000000000110000000000001
è¦å:
æ°å¤ãæ´æ°ã«åãè©°ããããã« | 0 ã使ç¨ãã人ãç®ã«ããããããã¾ãããä»»æã®æ°å¤ x ã« 0 ã§ãããåä½ã® OR ãè¡ãã¨ã x ã 32 ãããæ´æ°ã«å¤æããå¤ãå¾ããã¾ããã -2147483648 ãã 2147483647 ã®ç¯å²å¤ã«ããå¤ã«ã¤ãã¦ã¯ãå
é ã®ããããé¤å»ããããã¨ã«ãªãã¾ãã代ããã« Math.trunc() ã使ç¨ãããã使ç¨ãã¦ãã ããã
é·æ´æ°ã®å ´åãåãæ¨ã¦ã¯çºçãã¾ãããæ¦å¿µçã«ã¯ãæ£ã®å¤ã®é·æ´æ°ã¯å
é ã«ç¡éã® 0 ãããããããè² ã®å¤ã®é·æ´æ°ã¯å
é ã«ç¡éã® 1 ãããããããã®ã¨çè§£ãã¦ãã ããã
ä¾
>ãããè«çåã®ä½¿ç¨
// 9 (00000000000000000000000000001001)
// 14 (00000000000000000000000000001110)
14 | 9;
// 15 (00000000000000000000000000001111)
14n | 9n; // 15n
仿§æ¸
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # prod-BitwiseORExpression> |