下面代码的运行结果是?(选择一项)
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<script>
var str="IMOOC521";
var num=parseInt(str);
if(num==NaN){
alert(NaN);
}else if(num==521){
alert(521);
}else if(typeof num=="number"){
alert("number");
}else{
alert("str")
}
</script>
</body>
</html>
A.NaN
B.521
C.number
D.str
解析:var num=parseInt(str);//NaN。而NaN不等于任何值,包括NaN自己。所以num==NaN的运行结果是false。NaN的数据类型是number,因此这段代码运行的结果就是number。判断一个变量是否是非数字要运用isNaN( )来判断。