number | 0为何可以向下取整呢,黑魔法啊,望老师能讲解一下
因为|这个是或位操作符,意思是先将数值转换成32位二进制整数值(如果有小数则忽略),再对二进制上每一位进行或运算,得出结果;
这里xxx|0,因为0的二进制就是0000000...00一共32位(32个0),无论任何数对0进行或运算都是原来的数,因此可以用它来进行向下取整
666
这个向下取整只针对正数,负数|0并没有向下取整
mark