JS Lesson2 : Math()、parseInt()、parseFloat()、isNaN()、isInfinity()方法汇总

原创 2016年10月12日 19:59:49

JS中的Math方法:

  1. 1. Math.abs(num) : 返回num的绝对值  
  2. 2. Math.acos(num) : 返回num的反余弦值  
  3. 3. Math.asin(num) : 返回num的反正弦值  
  4. 4. Math.atan(num) : 返回num的反正切值  
  5. 5. Math.atan2(y,x) : 返回y除以x的商的反正切值  
  6. 6. Math.ceil(num) : 返回大于num的最小整数  
  7. 7. Math.cos(num) : 返回num的余弦值  
  8. 8. Math.exp(x) : 返回以自然数为底,x次幂的数  
  9. 9. Math.floor(num) : 返回小于num的最大整数  
  10. 10.Math.log(num) : 返回num的自然对数  
  11. 11.Math.max(num1,num2) : 返回num1和num2中较大的一个  
  12. 12.Math.min(num1,num2) : 返回num1和num2中较小的一个  
  13. 13.Math.pow(x,y) : 返回x的y次方的值  
  14. 14.Math.random() : 返回0到1之间的一个随机数  
  15. 15.Math.round(num) : 返回num四舍五入后的值  
  16. 16.Math.sin(num) : 返回num的正弦值  
  17. 17.Math.sqrt(num) : 返回num的平方根  
  18. 18.Math.tan(num) : 返回num的正切值  
  19. 19.Math.E : 自然数(2.718281828459045)  
  20. 20.Math.LN2 : 2的自然对数(0.6931471805599453)  
  21. 21.Math.LN10 : 10的自然对数(2.302585092994046)  
  22. 22.Math.LOG2E : log 2 为底的自然数(1.4426950408889634)  
  23. 23.Math.LOG10E : log 10 为底的自然数(0.4342944819032518)  
  24. 24.Math.PI : π(3.141592653589793)  
  25. 25.Math.SQRT1_2 : 1/2的平方根(0.7071067811865476)  
  26. 26.Math.SQRT2 : 2的平方根(1.4142135623730951)

parseInt函数:(此处为转载,易懂) 将字符串转为为整形。

parseInt(number,type)这个函数后面如果不跟第2个参数来表示进制的话,默认是10进制


比如说parseInt("010",10)就是10进制的结果:10,parseInt("010",2)就是2进制的结果:2,parseInt("010",8)就是8进制的结果:8,parseInt("010",16)就是16进制的结果:16。


下面我来说说没有指定进制单位的时候,默认是10进制,但:如果是里面的Number是0开头的就认为是8进制的,如果是0x开头的就认为是16进制的


parseInt("10")==>parseInt("010",10)===>10

parseInt("010")==>parseInt("010",8)==>8

parseInt("0x10")==>parseInt("010",16)==>16.

parseInt(Number)如果中间的Number遇到不是数字(0-9)的就中断往下解析,就只取不是数字之前的值去运算:

比如parseInt("100x"),就相当于parseInt("100")===》parseInt("100",10)==>100,

又如parseInt("0100x")===>parseInt("0100")===>parseInt("100",8)===>64.

当如果第一个不是0且不是字符就认为是10进制,一切照旧执行,遇到字母就停下来。又当如果是第一个是0,如果是x就继续往下走,这里的x不代表数值,只能和前面的0一起

组成0x代表16进制的单位,后面的才按上面我们讲的遇到非数字停止解析的规则来。比如

parseInt("0xt")==>parseInt("0x")==>parseInt("",16)就是NaN了。

总结下,parseInt(Number)里面的值:

如果是第一位不是0就遇到字母就停止解析,并把字母前面的值作为10进制去解析,如果第一个就是字母那么值就是空,空成了NaN,比如:


parseInt("a")==>parseInt("",10)==>NaN.

parseInt("10a")==>parseInt("10")==>parseInt("10",10)==>10;

如果第一位是0,且第2位不是x也和上面一样遇到字母就停止解析,并把字母前面的值作为8进制去解析,比如:

parseInt("0a")==>parseInt("0")==>parseInt("0",10)==>0.

parseInt("010a")==>parseInt("010")==>parseInt("10",8)==>8;

如果第一位是0,且第2位是x那后面也和上面一样遇到字母就停止解析,并把字母前面的值作为16进制去解析,比如:

parseInt("0xt")==>parseInt("",16)==>NaN.

parseInt("0x12t")==>parseInt("12",16)==>18.

另外,如果要转化为2进制,即:parseInt("11",2);   //  3


parseFloat():用于浮点型字符串

parseFloat()函数:类似于parseInt()函数,它返回字符串上包含的第一个浮点数。如果字符串不以有效浮点数开头,则返回0

例如:parseFloat("2.1e4xyz")返回21000;而parseFloat("xyz")返回0。

JavaScript中parseFloat函数方法是返回由字符串转换得到的浮点数。 使用方法:

parseFloat(numString)其中numString 参数是包含浮点数的字符串。JavaScript中parseFloat函数方法返回与 numString 中保存的数相等的数字表示。如果 numString 的前缀

不能解释为浮点数,则返回 NaN (而不是数字)。

parseFloat("abc") // 返回 NaN。 

parseFloat("1.2abc") // 返回 1.2。


isNaN():is not a number 用于判断是不是一个数字。

这个方法一般和parseInt和parseFloat结合用于判断返回的值是不是数字?(不确定)。语法是:isNaN(testvalue);

isNaN(NaN);//ture

这里面需要注意的几个地方是,NaN,如果将NaN作为与一个数值计算,那么结果也一定是NaN.


Infinity(正无穷)-Infinity(负无穷)

可以用isInfinity判断是不是无穷,返回bollen值

isFinite(1/0); // false
isFinite(-Infinity); // false
isFinite(NaN); // false

isNaN()检测parseFloat()和parseInt()的结果是否为数字

isNaN 意思为: 是 不是数字 isNaN(parseFloat(value)): 返回true ,则不是数字;返回false,则是数字注意:在使用isNaN(parseFloat(val...
  • m0_37359464
  • m0_37359464
  • 2017年03月28日 21:44
  • 834

JavaScript数据转换三——parseInt与parseFloat的区别及判别方式

parseInt与parseFloat的区别及判别方式var b = '100px1234'; alert(Number(b));输出结果为:NaN number只能转换数字var b = '100...
  • a839371666
  • a839371666
  • 2016年12月27日 20:42
  • 723

Java parseInt()和parseFloat()的用法

一、parseInt() parseInt()方法首先查看位置0处的 字符,判断它是否是个有效数字;如果不是,该方法将返回NaN,不再继续执行其他操作。但如果该字符是有效数字,该方法将查看位置1处的...
  • baoxiaofeicsdn
  • baoxiaofeicsdn
  • 2015年09月22日 18:11
  • 6907

parseInt(),parseFloat;isNaN()

js—parseInt()定义:parseInt() 函数可解析一个字符串,并返回一个整数。语法:parseInt(string, radix)string:必需。要被解析的字符串。radix:可选。...
  • Ape55
  • Ape55
  • 2017年05月25日 14:19
  • 160

parseInt() 与 parseFloat()

将其他格式转换为数字,一般用parseInt()与parseFloat()。很少用Number()。 以下代码可以看出,parseInt()方法仅可以作为全数字或开头含数字字符串、小数转化为整型数字...
  • sx32612254
  • sx32612254
  • 2017年02月22日 15:15
  • 554

详解JS中Number()、parseInt()和parseFloat()的区别

详解JS中Number()、parseInt()和parseFloat()的区别
  • m0_38099607
  • m0_38099607
  • 2017年05月23日 12:48
  • 778

JavaScript中关于parseInt(),Number(),parseFloat()以及一元运算符“+”将字符串类型转换为数字类型的对比

昨天看到了JS中基本类型互相转换的一些内容,遇到了pareInt()和Number()两种方式,感觉以前只是应用但是对其没有一个系统的了解,去网上大致了解了一下,自己总结了一下: parseInt()...
  • kirinlau
  • kirinlau
  • 2017年04月18日 11:16
  • 907

整理一下关于parseInt 和parseFloat的理解

 功能:将字符串转换为数字 parseInt(string, radix)string:必选项。所要转换的字符串,只返回字符串的第一组连续数字,允许字符串包含空格,如果字符串的第一个字符不能被转换成数...
  • jun_yuner
  • jun_yuner
  • 2007年12月12日 14:31
  • 1295

项目笔记之Javascript常用方法split parseInt和 Date.parse总结

一、JavaScript split() 方法回顾 定义和用法 split() 方法用于把一个字符串分割成字符串数组。 语法 stringObject.split(separato...
  • freshlover
  • freshlover
  • 2013年04月09日 19:29
  • 1971

js parsefloat parseint

 js parsefloat parseintJavaScript提供了3个显式的类型转换函数,分别是eval()、parseInt()和parseFloat(...
  • qingyun0719
  • qingyun0719
  • 2010年01月21日 08:41
  • 866
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JS Lesson2 : Math()、parseInt()、parseFloat()、isNaN()、isInfinity()方法汇总
举报原因:
原因补充:

(最多只允许输入30个字)