Number 、parseInt 、parseFloat之间的区别
1. Number
Number()
函数把对象的值转换为数字Number()
看的是整体, 如果一个参数值不能转换为一个数字将返回 NaN (非数字值)
Number('123')
Number('12.3')
Number('12.00')
Number('123e3')
Number('')
Number(null)
Number('foo')
Number('100a')
Number('-Infinity')
Number(undefined)
2. parseInt(string, radix)
parseInt()
函数可解析一个字符串,并返回一个整数- 如果字符串的第一个字符不能被转换为数字,结果为
NaN
- 只有字符串中的第一个数字会被返回。
- 开头和结尾的空格是允许的
参数 | 描述 |
---|
string | 必需。要被解析的字符串。 |
radix | 可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。 |
parseInt('123')
parseInt('12.5')
parseInt('12.00')
parseInt('123e3')
parseInt('')
parseInt(null)
parseInt('foo')
parseInt('100a')
parseInt('-Infinity')
parseInt(undefined)
parseInt('11',2)
3. parseFloat(string)
parseFloat()
函数可解析一个字符串,并返回一个浮点数- 如果字符串的第一个字符不能被转换为数字,结果为
NaN
- 第一个字符是数字,如果遇到第二个小数点或者其它非数字字符,那么就把前面的内容正常转换为数字
- 开头和结尾的空格是允许的
parseFloat(' 123')
parseFloat('12.5')
parseFloat('12.00')
parseFloat('123e3')
parseFloat('')
parseFloat(null)
parseFloat('foo')
parseFloat('100a')
parseFloat('-Infinity')
parseFloat(undefined)