乐趣区

关于javascript:JS使用parseInt和parseFloat转换数字

parseInt()parseFloat() 也是把其余数据类型转换为 number 类型的。然而它们的解决原理和 Number() 齐全不一样。

它们是把字符串类型转换为数字类型,如果解决的值不是字符串,须要先转换为字符串,而后再去转换为 number 类型。

它们的转换规则是:从字符串最右边开始查找,把找到的有效数字字符转换为数字,始终遇到一个非有效数字字符为止,则完结查找。

示例代码如下:

console.log(Number('12px')) // => NaN
console.log(parseInt('12px')) // => 12
console.log(parseInt('12px345')) // => 12
console.log(parseInt('width: 12px')) // => NaN
console.log(parseInt('12.5px')) // => 12
console.log(parseFloat('12.5px')) // => 12.5    parseFloat 只比 parseInt 多辨认一个小数点

console.log(Number(true)) // => 1
console.log(parseInt(true)) // => 先把布尔 true 转换为字符串 'true'  parseInt('true') => NaN
console.log(parseInt(NaN)) // => NaN
console.log(Number(null)) // => 0
console.log(parseInt(null)) // => parseInt('null') => NaN
退出移动版