带有数字的javascript运算符“|”

时间:2014-04-08 16:20:17

标签: javascript operators

嗨我只是想知道在这种情况下这个算子的运作方式......

<html>
<head><title></title>
<script>

var ff=23|1|3|65|1|25;
    //result 95
    alert(ff);

why the result is 95?

</script></head>
</html>

为什么结果是95?什么是过程?

1 个答案:

答案 0 :(得分:2)

|代表Bitwise OR运算符。按位或所有这些数字的结果是95。

对所有这些数字应用二进制或运算

0010111    - 23
0000001    - 1
0000011    - 3
1000001    - 65
0000001    - 1
0011001    - 25
-------
1011111    - 95

,结果为95. Bitwise OR的真值表如下

+-----------+
|   | 0 | 1 | 
-------------
| 0 | 0 | 1 |
------------- 
| 1 | 1 | 1 | 
-------------

您甚至可以查看分步结果,例如

23 | 1
// 23
23 | 3
// 23
23 | 65
// 87
87 | 1
// 87
87 | 25
// 95