自己对typeOf的一些误区

事情经过,今天在写小demo的时候发现了自己对typeOf的一些误区

我原本以为typeOf返回的数据类型,就是以他本身的类型保存的,可是我错了/_ \

1
2
3
4
5
6
var a = 1;
if(typeof(a) == number){
console.log(a);
}
VM3420:2 Uncaught ReferenceError: number is not defined
at <anonymous>:2:17

仔细一想感觉被自己蠢到了 number是一个变量,怎么可以用它和数据类型相比较。。。

本着好奇的心理,又想到typeOf使用什么类型表达出这些数据类型的
1
2
3
4
5
6
>var a = 1;
>var star = typeof(a);
>console.log('typeof返回的数据类型'+typeof(a));
>console.log('typeof返回的数据类型以'+typeof(star)+'保存');
>VM3210:3 typeof返回的数据类型number
>VM3210:4 typeof返回的数据类型以string保存

结果可以看出是string类型表达的,哈哈φ(* ̄0 ̄)

-------------本文结束感谢您的阅读-------------