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

你可能感兴趣的:(javascript)