在JavaScript中,有几种舍入数值的情况:
[1]四舍五入:上限
[2]向下舍入:地板
[3]四舍五入:四舍五入
[4]固定精度:至固定
[5]固定长度:最高精度
[6]舍入:parseInt,位操作
1.向上取整:ceil
天花板的意思是“天花板”,意思是高于某个数值且最接近它的整数。Ceil是Math对象的静态方法,需要传递一个参数。它的调用方法如下:
装天花板
2、向下取整: floor
floor的意思是“floor”,意思是数值下面最近的整数。Floor是Math对象的静态方法,需要传递一个参数。它的调用方法如下:
地面
3、四舍五入: round
round用于舍入浮点数并保留整数位。Round也是Math对象的静态方法,也需要传递一个参数,其调用方法如下:
轮次
4、固定精度: toFixed
toFixed不同于以上三种方法。它是在Number原型上实现的一种方法,其功能是舍入一个浮点数并保留固定的小数位数。ToFixed需要传递一个参数,可以如下调用:
至固定
5、固定长度: toPrecision
toPrecison也是一种处理在原型号上实现的浮点数的方法。与toFixed不同,它对浮点数进行舍入,并保留固定长度的有效数字,包括整数部分。
精确
6、取整: parseInt
parsent是全局对象窗口上的一个方法,它的作用是对一个可转换的数值进行舍入,可分为以下两种情况:1.将字符串的数值转换为数字整数,并转换字符串的每个字符,直到它遇到不可翻译的字符(包括小数点)。
2.舍入浮点数值,忽略小数部分,不舍入。
parseInt
00-1010 [1] | 0:和0是按位“或”运算,原始值不变。
[2] ~ ~:原始值也是通过两次按位非运算得到的。
[3] 0:向右移动0。
[4] 0:向左移动0位。
[5] 0:无符号右移0位
在执行舍入操作时,这些位运算符将显示一些共同的特征:
对于Number类型,直接应用位操作和parseInt得到的几乎一样。
对于其他类型,它通过Number()在内部转换为数值,然后应用位操作。
当对特殊的NaN和Infinity值进行位操作时,这两个值都被视为0。
对于数字类型,直接应用位操作。
数字型位操作
对于其他类型,首先使用Number()转换为数字类型,然后执行位操作。
其他类型的位操作
位操作作用于最基本的层次,即数值是根据内存中代表数值的位进行操作的。
位可以四舍五入的原因是:
ECMAScript中的数值存储为64位双精度浮点数,但位操作只能应用于整数,因此需要设置
将64位浮点数转换为32位整数,然后进行位运算,最后将计算结果转换为64位浮点数存储。