显示类型 隐式类型转换 及NaN详解
fwxstar 2018-06-04 602次浏览
摘要:
显示类型转换 Number(); parseInt(); parseFloat();隐式类型转换 + &nbs...
显示类型转换
Number();
parseInt();
parseFloat();
隐式类型转换
+ 200+"3" 2003 变成字符串
- * / % "200"-3 197 变成数字
++ -- 变成数字
> < 数字比较还是字符串比较 “10”>9=>true "10">"9"=>false
!取反 把右边变成布尔值
==
NaN详解
var a = Number("abc"); //NaN typeof(a); //number NaN 不是数字的数字类型 a === a //false
isNaN()
通过Number转型函数判断是否是数字 true=>不是数字 false=>是数字
一个小测验
var arr = [ '100px', 'abc'-6, [], -98765, 34, -2, 0, '300', , function(){alert(1);}, null, document, [], true, '200px'-30,'23.45元', 5, Number('abc'), function(){ alert(3); }, 'xyz'-90 ]; // 1、找到arr里所有的数字:-98765, 34, -2, 0, 5 // 2、找到可以转成数字的:'100px', -98765, 34, -2, 0, '300', '23.45元', 5 // 3、把转成数字以后,最大值判断出来:300 // 4、把 NaN 所在的位置找出来:1 14 17 19 var a1=[]; for(var i=0;i<arr.length;i++){ // 1. if(typeof arr[i] === "number" && !isNaN(arr[i])){ // console.log(arr[i]); // } // 2. if(parseInt(arr[i]) || parseInt(arr[i])==0){ // console.log(arr[i]); // } // 3.if(parseInt(arr[i]) || parseInt(arr[i])==0){ // a1.push(parseInt(arr[i])); // } // 4.if(typeof arr[i] === "number" && isNaN(arr[i])){ // console.log(i); // } } console.log( Math.max.apply(null,a1)); //(第三点)
- 上一篇:一个简易版购物车
- 下一篇:Number,parseInt,parseFloat转换