1 前言 js中经常会遇到取整问题,所以做了下总结。总的来说分为两个方面,直接取整(不考虑小数点后的部分)还是计算后取整(例如四舍五入,向上取整等)。 2 直接取整 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 3 计算取整 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
用户必须遵守《计算机软件保护条例(2013修订)》第十七条:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。鉴于此条例,用户从本平台下载的全部源码(软件)教程仅限学习研究,未经版权归属者授权不得商用,若因商用引起的版权纠纷,一切责任均由使用者自行承担,本平台所属公司及其雇员不承担任何法律责任。
尚美源码教程库 » JS中数字取整#私藏项目实操分享#