综述


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取整的更多相关文章

  1. js 取整

    1.丢弃小数部分,保留整数部分 js:parseInt(7/2)  2.向上取整,有小数就整数部分加1  js: Math.ceil(7/2)  3,四舍五入.  js: Math.round(7/2 ...

  2. js取整、四舍五入等数学函数

    js只保留整数,向上取整,四舍五入,向下取整等函数1.丢弃小数部分,保留整数部分parseInt(5/2) 2.向上取整,有小数就整数部分加1 Math.ceil(5/2) 3,四舍五入. Math. ...

  3. js 取整 取余

    1.取整//保留整数部分parseInt(3/2) // 1 2.向上取整// 向上取整,有小数就整数部分加1Math.ceil(3/2) // 2 3.四舍五入// 四舍五入Math.round(3 ...

  4. js取整,保留小数位数、四舍五入、科学记数法及去掉数字末尾多余的0

    1.向下取整 var num1 = 12.10345; var num2 =12.9801; var newnum1=Math.floor(num1)     //结果 12 var newnum2= ...

  5. JS取整,四舍五入,取绝对值等Math对象常用方法

    function f1(type,num1) { switch(type) { case 'floor': return Math.floor(num1);//取整或下舍入 break; case ' ...

  6. JS 取整、取余

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

  7. JS取整方法

    1.toFixed方法 定义:toFixed() 方法可把 Number 四舍五入为指定小数位数的数字. 例如:将数据Num保留2位小数,则表示为:toFixed(Num):但是其四舍五入的规则与数学 ...

  8. js取整并保留两位小数的方法

    js 四舍五入函数 toFixed(),里面的参数 就是保留小数的位数.注意 toFixed()方法只针对数字类型,如果是字符类型需要使用Number()等方法先转换数字类型再使用 document. ...

  9. js取整 - 优雅版(装逼必备)

    var a = 2.98; var z1 = ~~a; var z2 = a | 0; var z3 = a>>0; console.log(z1, z2, z3);     // 2, ...

随机推荐

  1. Android常用工具类封装---SharedPreferencesUtil

    SharedPreferences常用于保存一些简单的数据,如记录用户操作的配置等,使用简单. public class SharedPreferencesUtil {              // ...

  2. 去掉iphone 的圆角样式

    每次面对iphone这种丑丑的样式,我简直不能再愉快的写代码~~而且每次记不住那烦人的属性~~~必须记录下来~~ -webkit-appearance:none 为了下次不用再百度,终于背下来~~~

  3. KNN算法[分类算法]

    kNN(k-近邻)分类算法的实现 (1) 简介: (2)算法描述: (3) <?php /* *KNN K-近邻方法(分类算法的实现) */ /* *把.txt中的内容读到数组中保存,$file ...

  4. 淘宝数据库连接池 druid 性能评测

    想必大家知道淘宝在双十一惊人表现,搜索群里有哥们对淘宝的链接池进行了测试,废话不多说,直接上测试结果,结果如下:在Spring中使用方法<bean id="dataSource&quo ...

  5. HDU 5919 Sequence II(可持久化线段树)

    [题目链接]http://acm.hdu.edu.cn/showproblem.php?pid=5919 [题目大意] 给出一个数列,每次查询数列中,区间非重元素的下标的中位数.查询操作强制在线. [ ...

  6. 我的MYSQL学习心得 mysql的权限管理

    这一篇<我的MYSQL学习心得(十三)>将会讲解MYSQL的用户管理 在mysql数据库中,有mysql_install_db脚本初始化权限表,存储权限的表有: 1.user表 2.db表 ...

  7. 2013杭州网络赛D题HDU 4741(计算几何 解三元一次方程组)

    Save Labman No.004 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Other ...

  8. Python BeautifulSoup4 使用指南

    前言: 昨天把传说中的BeautifulSoup4装上了,还没有装好的童鞋,请看本人的上一篇博客: Python3 Win7安装 BeautifulSoup,依照里面简单的步骤就能够把Beautifu ...

  9. c++中string::function集合

    string append() 1.直接添加另一个完整的字符串: str1.append(str2); 2.添加另一个字符串的某一段字串:    str1.append(str2, 11,  7); ...

  10. C++中delete 和delete[]的区别

    c++告诉我们在回收new分配的单个对象的内存空间的时候用delete,   回收new[ ]分配的一组对象的内存空间的时候用 delete[ ]; #include <iostream> ...