美文网首页js/jQuery
JS中数字取整

JS中数字取整

作者: foolgry | 来源:发表于2016-11-19 17:35 被阅读0次

综述

js中经常会遇到取整问题,所以做了下总结。总的来说分为两个方面,直接取整(不考虑小数点后的部分)还是计算后取整(例如四舍五入,向上取整等)。

一、直接取整

1.parseInt(number)
这大概是取整最常用的方法了,因为parseInt()不是只能处理Number类型,还可以处理字符串类型的。
parseInt()处理在处理字符串时,会从第一个不是空格的字符开始处理。如果第一个不是数字字符或者负号,则返回NaN;如果是数字字符,则会一直处理到不是数字字符为止。
注意,parseInt()可以识别各种整数格式(十进制,八进制和十六进制)。

var 
    num1 = parseInt("2015nov"),  //2015
    num2 = parseInt(""),  //NaN
    num3 = parseInt("0xA"),  //10(十六进制)
    num4 = parseInt(20.15),  //20
    num5 = parseInt(-20.15),  //-20
    num6 = parseInt("070");  //56(八进制数)

2.~~number
所有取整之中最快的,位运算,一如既往的快。

var num1 = ~~20.15,  //20
    num2 = ~~(-20.15);  //-20

3.number^0

var num1 = 20.15^0,  //20
    num2 = (-20.15)^0;  //-20

4.number<<0

var num1 = 20.15 << 0,  //20
    num2 = (-20.15) << 0,  //-20

二、计算取整

1.四舍五入Math.round(number)
Math.round()是Math对象中的一个函数,将数值四舍五入为最接近的整数。现实中很少有用到负数的四舍五入的,但是我们也可以看几个负数的例子。

var num1 = Math.round(20.1),  //20
    num2 = Math.round(20.5),  //21
    num3 = Math.round(20.9),  //21
    num4 = Math.round(-20.1),  //-20
    num5 = Math.round(-20.5),  //-20 注意这里是-20而不是-21
    num6 = Math.round(-20.9);  //-21

2.向上取整Math.ceil(number)
Math.ceil()取向上最接近的整数。

var num1 = Math.ceil(20.1),  //21
    num2 = Math.ceil(20.5),  //21
    num3 = Math.ceil(20.9),  //21
    num4 = Math.ceil(-20.1),  //-20
    num5 = Math.ceil(-20.5),  //-20
    num6 = Math.ceil(-20.9);  //-20
    

3.向下取整Math.floor(number)
Math.floor()`取向下最接近的整数。

var num1 = Math.floor(20.1),  //20
    num2 = Math.floor(20.5),  //20
    num3 = Math.floor(20.9),  //20
    num4 = Math.floor(-20.1),  //-21
    num5 = Math.floor(-20.5),  //-21
    num6 = Math.floor(-20.9),  //-21

相关文章

  • JS中数字取整

    综述 js中经常会遇到取整问题,所以做了下总结。总的来说分为两个方面,直接取整(不考虑小数点后的部分)还是计算后取...

  • JS中数字的向上取整,向下取整,四舍五入,取整

  • 数字取整

    向上取整: Math.ceil(); 向下取整: Math.floor() | parseInt() | num...

  • js取整

    js取整数的方法 1.丢弃小数部分,保留整数部分 2.向上取整,有小数就整数部分加1 3,四舍五入. 4,向下取整

  • JS取整

    1.丢弃小数部分,保留整数部分parseInt(9/2) 2.向上取整,有小数就整数部分加1Math.ceil(9...

  • js取整

    1、parseInt字符串转为整数的时候,是一个个字符依次转换,如果遇到不能转为数字的字符,就不再进行下去,返回已...

  • JavaScript中数字运算精度丢失问题

    取整 js里取整有好几个方法,比如 如果整数位数字很大,这时候利用位操作(慎用)会出现数值溢出,可以用其他方法代替...

  • js分钟取整,时间取整

    今天遇到一个需求,是显示抽奖时间,这个时间必须要取整,比如 2019/05/16 17:27分要取整为 2019/...

  • js中取模运算、求商及取整方法

    在此整理一下js中的取模运算、求商及取整方法 得到结果如下:

  • JS 取整、取余

    一、取整 1. 取整, 丢弃小数部分,保留整数部分 parseInt(7/2)// 3 2. 向上取整,向上取整,...

网友评论

    本文标题:JS中数字取整

    本文链接:https://www.haomeiwen.com/subject/eelepttx.html