数字类型

134 阅读1分钟

类型转换

通过Number()方法进行转化
基本类型的转化
1、Number([字符串]);如果字符串中出现任意一个非有效数字,结果则为NAN;
2、Number([布尔]); true = 1; false = 0;
3、Number([null]) = 0;
4、Number([undefined]) = NaN;

引用类型
先把引用类型的值.toString()转换为字符串,然后在把字符串Number()转换为数字;
1、对象.toString() => [Object, Object] => NaN
2、数组[1, 2].toString() => '1, 2' => NaN
3、数组[1].toString() => '1' => 1
4、数组[].toString() => '' => 0

解析字符串数字

从字符串最左侧字符开始查找有效数字,并转换成有效数字字符,遇到一个非有效数字字符就结束查找;
parseInt: 把字符串整数部分解析出来 parseInt('1.5px') => 1
parseFloat: 把字符串包含小数的部分解析出来 parseInt('1.5px') => 1.5

NaN的比较

NaN和谁都不相等,包括自己; if (NaN == NaN) => false;

布尔类型

true 和 false 只有两个值; true = 1 false = 0;
js中只有 0、null、undefined、NaN、空字符串是false,其余都是true