我已经使用JavaScript工作了两年,但我从未见过这样的表达式。在Google Chrome控制台中,我输入了以下内容:
var a=456;
var b=789;
然后我输入了这个。
a|=b
结果是 989
有人能告诉我这个表达式是什么意思,为什么结果是 989
吗?
我已经使用JavaScript工作了两年,但我从未见过这样的表达式。在Google Chrome控制台中,我输入了以下内容:
var a=456;
var b=789;
a|=b
结果是 989
有人能告诉我这个表达式是什么意思,为什么结果是 989
吗?
这是一个位或操作。当以此方式使用时,它是“或等于”,其中结果被分配给变量。
111001000 //456
1100010101 //789
1111011101 //989
好的,表达式
a|=b;
当你执行a+=b;
时,它相当于
a = a | b;
运算符|
是表示“或”的,和运算符||
不同。后者用于二进制操作中的“或”。
5 | 1 -> 0101 | 0001 -> 0101 -> 5
456 | 789 -> 111001000 | 1100010101 -> 1111011101 -> 989