JavaScript中关于parseInt(),Number(),parseFloat()以及一元运算符“+”将字符串类型转换为数字类型的对比
2017-04-18 11:16
771 查看
昨天看到了JS中基本类型互相转换的一些内容,遇到了pareInt()和Number()两种方式,感觉以前只是应用但是对其没有一个系统的了解,去网上大致了解了一下,自己总结了一下:
parseInt(), parseInt()方法是把给定的字符串按照指定的进制转换为整型 int类型。
语法为 parseInt(str, radix),radix参数表示要转换的目标进制。
ex: parseInt(“9527”,10),
parseInt()所要被解析的参数必须为整数字符串,在遇到不能解析的内容时会自动返回前面已经解析好的内容,如果是第一位字符不能解析那么会直接返回NaN。
Number(), Number()除了可以用’new’关键字来创建对象外,还可以用来执行类型转换,如果需要转换的内容不能转换为数字,则会自动返回NaN。
语法为Number(str),比如:9527abc”,parseInt()返回是9527(解析到不能解析的位置时会自动返回前面已经解析好的内容),而Number()返回是NaN。
注:Number()会把空字符串转换为0。
Number(“3.14”) // 返回 3.14
Number(” “) // 返回 0
Number(“”) // 返回 0
Number(“95 27”) // 返回 NaN
Number(“95a27”) // 返回 NaN
全局方法 Number() 可将布尔值转换为数字。
Number(false) // 返回 0
Number(true) // 返回 1
全局方法 Number() 可将日期转换为数字。和Date()中的getTime()效果相同
var d = new Date();
Number(d) // 返回 1492484859621
日期方法 getTime() 也有相同的效果。
d = new Date();
d.getTime() // 返回 1492484859621
parseFloat(), 类似parseInt()。解析一个字符串,并返回一个浮点数。 但是parseFloat()的执行速度会快于parseInt().
一元运算符“+”可以将字符串转化为数字,如+”9527”返回是9527.
和Number()一样,+”95 27”返回是NaN;
ex:
var y = “95”; // y 是一个字符串
var x = + y; // x 是一个数字
如果变量不能转换,它仍然会是一个数字,但值为 NaN (不是一个数字):
ex:
var y = “abc”; // y 是一个字符串
var x = + y; // x 是一个数字 (NaN)
parseInt(), parseInt()方法是把给定的字符串按照指定的进制转换为整型 int类型。
语法为 parseInt(str, radix),radix参数表示要转换的目标进制。
ex: parseInt(“9527”,10),
parseInt()所要被解析的参数必须为整数字符串,在遇到不能解析的内容时会自动返回前面已经解析好的内容,如果是第一位字符不能解析那么会直接返回NaN。
Number(), Number()除了可以用’new’关键字来创建对象外,还可以用来执行类型转换,如果需要转换的内容不能转换为数字,则会自动返回NaN。
语法为Number(str),比如:9527abc”,parseInt()返回是9527(解析到不能解析的位置时会自动返回前面已经解析好的内容),而Number()返回是NaN。
注:Number()会把空字符串转换为0。
Number(“3.14”) // 返回 3.14
Number(” “) // 返回 0
Number(“”) // 返回 0
Number(“95 27”) // 返回 NaN
Number(“95a27”) // 返回 NaN
全局方法 Number() 可将布尔值转换为数字。
Number(false) // 返回 0
Number(true) // 返回 1
全局方法 Number() 可将日期转换为数字。和Date()中的getTime()效果相同
var d = new Date();
Number(d) // 返回 1492484859621
日期方法 getTime() 也有相同的效果。
d = new Date();
d.getTime() // 返回 1492484859621
parseFloat(), 类似parseInt()。解析一个字符串,并返回一个浮点数。 但是parseFloat()的执行速度会快于parseInt().
一元运算符“+”可以将字符串转化为数字,如+”9527”返回是9527.
和Number()一样,+”95 27”返回是NaN;
ex:
var y = “95”; // y 是一个字符串
var x = + y; // x 是一个数字
如果变量不能转换,它仍然会是一个数字,但值为 NaN (不是一个数字):
ex:
var y = “abc”; // y 是一个字符串
var x = + y; // x 是一个数字 (NaN)
相关文章推荐
- 补点JavaScript 基础:字符串到数字类型的转换(Number, +, ~~, parseInt, parseFloat)
- 关于javascript里的parseInt() 与 parseFloaat() -文本转换为数字
- javascript 数据类型转换(parseInt,parseFloat)
- 数字与字符串之间的转换 (.toString,parseInt,parseFloat)
- js将某个值转换为String字符串类型或转换为Number数字类型
- Javascript学习笔记:2种其他类型转换为数字Number类型的方式
- javascript 数据类型转换(parseInt,parseFloat)
- 字符串的运算符重载(如:赋值‘=’、加'+'、加等'+='、下标'[]'相等'=='、不等'!='、大于'>'、输出运算符'<<'以及类型转换)
- int类型转换成字符串和字符串转换成int类型以及在MFC静态文本框显示数字的方式方法
- js中字符串类型转化toString、parseInt、parseFloat、Number
- Number类为数字到字符串的类型转换场景定义三种方法
- string字符串类型转换为number数字类型
- 我的JavaScript回顾之路_01—0206—++在前在后区别/&&和||/条件判断语句/循环语句的区别/字符串类型数字和数字类型之间的转换
- JavaScript 特有奇葩问题“字符串类型与数字类型混乱”的分析与解决,与类型转换
- javascript基础:字符串自动转换为数字类型
- 关于字符和数字类型的索引,Oracle如何实现内部自动转换以及索引使用的验证测试
- javascript 数据类型转换(parseInt,parseFloat)
- 关于字符和数字类型的索引,Oracle如何实现内部自动转换以及索引使用的验证测试
- 字符串:怎样将数字类型转换为字符串
- 获取字符串格式日期的年月日以及转换为TimeStamp类型的方法