发布网友 发布时间:2022-04-25 19:03
共3个回答
热心网友 时间:2022-05-16 04:30
JS &的作用:
&表示位的与运算。两个数值的各个位分别相与,同时为1才得1。只要一个为0就得0。
85等于二进制1010101,如果currentState & 85 结果还是等于85,就表示currentState的1、3、5、7位都为1。
作“与”运算,最简单的理解是,可以把两个数化为二进制来看看,比如:10的二进制1010
12的二进制是1100,那么10&12= 1000(这是二进制)也就是8,如果i & j不等于0,那么条件是为true的。
因为true false 在做值比较(和其他类型的值)时会进行强制类型转化。true 为1 false 为 0.
比方说:alert(1==true);是true,而alert(3==true);为false.
这是主要原因。而if (i & j)的时候,javascript 会进行转化,或者用Boolean 数据类型进行包装,像java C#里的装箱,拆箱。
若其值为 0、null、 NaN,或者空字符串,则该 Boolean 对象的值为 false,其他均为true.
另,与操作就是和C语言一样的与操作。
热心网友 时间:2022-05-16 05:48
位运算热心网友 时间:2022-05-16 07:23
推荐你去看看这个链接http://zhidao.baidu.com/question/130386852.html,不明白再追问。