很多人都对双竖杠"||"非常熟悉,因为这个经常在项目中经常会用到。单竖杠"|",却很少在项目开发中使用到。"|"是位运算符,"||"是逻辑运算符。
平常,经常使用以下这个几个方法对数字进行处理。
- Math.ceil() //用作向上取整
- Math.floor() //用作向下取整
- Math.round() //四舍五入取整
- parseInt() //解析一个字符串并返回一个整数
- parseFloat() //可解析一个字符串,并返回一个浮点数
- toFixed() //四舍五入为指定小数位数的数字
- toPrecision() //返回指定长度的数值字符串
- Number() //把对象的值转换为数字
- isFinite() //检查某个值是否为是无穷大的数
其实,"|"也可以对数字,进行简单取整处理。
console.log(0.1|0)//0
console.log(1.1|0)//1
console.log(2.345|0)//2
console.log(3.99999|0)//3
console.log(-4.567|0)//-4
从打印中,可以看出"|"单竖杠可以对数字取整运算,就是只保留整数部分。 | 0可以向下取整,,是因为位运算符工作于32位的数字上,任何数字操作都将转换为32位。0的二进制就是00...0一共32位(32个0),无论任何数对0进行或运算都是原来的数。一个整数"|"0可以得到它本身,一个小数与0按位或可以得到取整的效果。
console.log(3|4); //7
console.log(4|4);//4
console.log(8|3);//11
console.log(5.3|4.1);//5
console.log(5.3|1688);//1693
这里的单竖杠"|"就是十进制的数字转换为二进制之后,两数相加打印出来的结果。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。