Number 数据类型转化 NaN 函数isNaN
console.log(1 / 0); /*js中可以使用0做分母,但是结果是 Infinity(无穷数字)*/ console.log(-1 / 0); //就是负无穷 var a = 0.1 + 0.2; console.log(a); //0.30000000000000004 console.log(a == .3); //返回false 不要这样做比较 var nu = '下' - 5; console.log(nu, typeof nu);// NaN "number" nu为NaN不是一个数字,做的减法运算本来想得到一个数字但是没办法转化为一个数字,智能返回一个NaN,但是NaN的数据类型是number;
1.跟谁都不相等,包括它自己
2.只要有NaN参与的运算结果都是NaN
3.NaN的typeof返回的是number
var nu = '下' - 5; console.log(nu + 5); //NaN console.log(NaN == NaN); //false /* 1.跟谁都不相等,包括它自己 2.只要有NaN参与的运算结果都是NaN 3.NaN的typeof返回的是number */
console.log(isNaN('10')); // false console.log(isNaN('10px')); // true console.log(isNaN('')); // false console.log(isNaN(' ')); // false console.log(isNaN(NaN)); // true console.log(isNaN(true)); // false console.log(isNaN(false)); // false console.log(isNaN(null)); // false console.log(isNaN(undefined)); // true
// 1、字符串如果全是数字(包括小数点)转成数字;如果有不是数字的,转成NaN,空字符串和空格转成0 // 2、true转成1, false转成0 // 3、数字简单的返回 // 4、null转成0 // 5、undefined转成NaN // 6、对象一般返回NaN,一般不用来转对象 var a = '10'; var b = Number(a); console.log(b, typeof b); // 10 'number' console.log(a, typeof a); console.log(Number('12px')); // NaN console.log(Number('')); // 0 console.log(Number(' ')); // 0 console.log(Number(10)); // 10 console.log(Number(true)); // 1 console.log(Number(false)); // 0 console.log(Number(null)); // 0 console.log(Number(undefined)); // NaN console.log(Number({})); // NaN console.log(Number([1, 2, 3])); // NaN
-
-
parseFloat(变量); 转小数,没有第二个参数。认别一个小数点 (无第二个参数)
-
console.log(Number('12.34万')); // NaN console.log(parseInt('12.34万')); // 12 console.log(parseInt('34ab56')); // 34 console.log(parseInt('a34ab56')); // NaN console.log(parseInt(' 34ab56')); // 34 console.log(parseFloat('12.34万')); // 12.34 console.log(parseFloat('12.3.4万')); // 12.3 // ---------------------------- console.log(parseInt('070', 10)); // 70
不停学习,热爱是源源不断的动力。