JavaScript 数字相关的转换和方法
类型判断
isNaN - 是否是 NaN(Not a Number)。主要用来判断 NaN 是否是 NaN,因为 NaN == NaN 是 false。
isNaN(NaN); // true
isNaN(parseFloat('abc')); // true
isNaN(37); // false
isNaN("37"); // false
isNaN("37.37"); // false
isNaN(""); // false: 会被转化转化成0
isNaN(" "); // false: 会被转化转化成0
isNaN(undefined); // true
isNaN({}); // true
isNaN(true); // false
isNaN(null); // false
isFinite - 是否是有限的数字。
isFinite(Infinity); // false
isFinite(NaN); // false
isFinite(-Infinity); // false
isFinite(2/0); // false:2/0 的结果是 Infinity
isFinite(0); // true
isFinite(2e64); // true
isFinite(null); // true
类型转化
parseFloat - 字符串转数字。
var number = parseFloat('4.6');
number;// 4.6
parseInt(str [,进制]) - 字符串转整数。
var number = parseInt('4.6', 10);
number;// 4
数字转字符串。
var str = 4.5 + '';
str; // '4.5'
Number 上的常用属性方法
Number.prototype.toFixed([精度]) - 取几位小数。会对取的最后一位数字做四舍五入的操作。注意:返回值类型为字符串。
3.1415.toFixed(2);// '3.14'
3.1455.toFixed(2);// '3.15'
3.1415.toFixed();// '3'
Number.prototype.toPrecision() - 返回满足精度的字符串。会对取的最后一位数字做四舍五入的操作。
3.1415.toPrecision(2);// '3.1'
3.1544.toPrecision(2);// '3.2'
13.1415.toPrecision(2);// '13'
130.515.toPrecision(2);// 1.3e+2
Number.prototype.toExponential(精度) - 返回数字的科学计数法的字符串。
3.14.toExponential()// '3.14e+0'
1300000000.1415.toExponential(2)// '1.30e+9'
Number.MIN_VALUE - 最小值。小于这个值的会被转换成 0。
Number.MIN_VALUE; // 5e-324
Number.MAX_VALUE - 最大值。大于这个值的会被转换成 Infinity。
Number.MAX_VALUE; // 1.79e+308
Math 上的常用属性方法
Math.PI - 圆周率的近似值。
``
Math.PI; // 3.14159...
Math.ceil(数字) - 如果是小数,返回比参数大最近的整数。
Math.ceil(4.3);// 5
Math.ceil(4.8);// 5
Math.ceil(-4.3);// -4
Math.ceil(2);// 2
Math.floor(数字) - 如果是小数,返回比参数小最近的整数。
Math.floor(3.5);// 3
Math.floor(-3.5);// -4
Math.round(数字) - 四舍五入。
Math.round(3.5);// 4
Math.round(3.4);// 3
Math.random() - 返回 0 到 1 之间的一个随机数。包括 0,不包括1。
Math.random();// 可能是 0.008179764728993177
Math.random();// 可能是 0.493650607066229
Math.abs(数字) - 返回绝对值。
Math.abs(-2); // 2
Math.abs(2); // 2
Math.abs(0); // 0
Math.min(数字1[, 数字2, [, ...] ] - 返回一群数字中的最小值。与其相反的函数为 Math.max。
Math.min(0, 10, 5.4, -3.4); // -3.4
Math.min.apply(null,[0, 10, 5.4, -3.4]); // -3.4 (求数组中的最小值)
Math 上还有与三级函数,指数,幂相关的函数。
JavaScript 数字相关的转换和方法的更多相关文章
- javaScript将string转换成array,并将汉字按汉语拼音排序方法
亲测,代码如下: var str = '中华人民共和国民主富强': var arr = str.split("");//字符串装换数组方法一 //arr = str.replace ...
- JavaScript中String对象的方法介绍
1.字符方法 1.1 charAt() 方法,返回字符串中指定位置的字符. var question = "Do you like JavaScript?"; alert(ques ...
- 使用js进行string和json之间转换的方法
在数据传输过种中,json是以文本,即字符串的形式传递,字符串形似Json对象: var str1 = '{ "name": "Amy", "sex& ...
- URL地址中中文乱码详解(javascript中encodeURI和decodeURI方法、java.net.URLDecoder.encode、java.net.URLDecoder.decode)
引言: 在Restful类的服务设计中,经常会碰到需要在URL地址中使用中文作为的参数的情况,这种情况下,一般都需要正确的设置和编码中文字符信息.乱码问题就此产生了,该如何解决呢?且听本文详细道来. ...
- JavaScript里值比较的方法
JavaScript里值比较的方法 参考资料 一张图彻底搞懂JavaScript的==运算 toString()和valueof()方法的区别 Object.is 和 == 与 === 不同 == 运 ...
- JavaScript中常用的字符串方法
1. charAt(x) charAt(x)返回字符串中x位置的字符,下标从 0 开始. //charAt(x) var myString = 'jQuery FTW!!!'; console.log ...
- JavaScript 数组(Array)对象的方法
JavaScript 数组(Array)对象的方法 concat() 描述:用于连接两个或多个数组.该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本. 原型:arrayObject.conc ...
- javascript的数值转换
在javascript中数值转换,最要的一点是函数第一个字母必须要大写.js中的函数有string字符型.number数值型.null空型.boolean布尔型.undefined未定义. 具体的转换 ...
- 多浏览器兼容用javascript获取url参数的方法比较推荐的一种
多浏览器兼容用javascript获取url参数的方法比较推荐的一种 <script language = javascript> function request(paras){ var ...
随机推荐
- Android中计算时间差的实现方法
今天为“至简天气”增加了一项功能:在启动时根据上次更新数据的时间判断是否有必要更新数据,因为 weather.com.cn 的实况数据貌似是25分钟才会刷新一次,只有在据上次更新的时间达25分钟以上才 ...
- 工具类_java 操作cookie
import java.io.UnsupportedEncodingException;import java.net.URLDecoder;import java.net.URLEncoder;im ...
- iPhone 6 为何坚持1GB内存?
原文地址:http://digi.ifeng.com/expert/special/96/#6467378-qzone-1-9015-46cf52f061fd6e814686a918cedcb024 ...
- linux下mysql出现Access denied for user 'root'@'localhost' (using password: YES)解决方法
# /etc/init.d/mysql stop # mysqld_safe --user=mysql --skip-grant-tables --skip-networking & # my ...
- Uber司机手机终端问答篇
手机客户端 Q:自带安卓手机可以使用吗? A:安卓终端已经推出,请在微信页面点左下菜单选取“下载司机端APP”查看! Q:对自带苹果手机的要求? A:4S型号及以上且未越狱:使用3G或4G网络 Q:客 ...
- display:table标签来自动改变列宽 改变的同时table的整体宽度跟随变化
发现公司里的所有分页功能都是通过display:talbe来实现的,但是用户最近说要让表格列宽可以拖动:所有我就寻找了好多的办法:网上找了很多的资料,但是都不是我要的效果因为他们都是列宽不改变要不就是 ...
- [PHP] PHP初学者想了解"伪静态",必须看这个贴 [复制链接] [推荐]
一.何为“伪静态”? 以传智播客bbs论坛为例,这篇帖子的链接地址原本应该是“http://bbs.itcast.cn/forum.php?mod=post&action=newthread& ...
- Ubuntu下lamp(PHP+Mysql+Apache)搭建+完全卸载卸载方法
安装apache2 sudo apt-get install apache2 安装完成,运行如下命令重启下: sudo /etc/init.d/apache2 restart 在浏览器里输入http: ...
- 高效率JavaScript编写技巧
最近在编写一个JavaScript框架,发现有很多细节注意得不够,担心长时间积累会导致框架实际应用的时候出现严重的效率问题.于是开始关注JavaScript提高效率的一些技巧,在这里分享给大家. 1. ...
- 记userscripts.org
发现一些Firefox用户脚本不起作用,userscripts.org访问不能有一个很长的一段时间,我还以为出了什么问题没出去检查.前几天有时间检查脚本,在路上,然后返回到userscripts.or ...