js基础回顾-数据类型和typeof怎么用

 js的基本数据类型有六种,undefined、null、number、string、boolean、object.

            未定义        空      数字        字符串    布尔       对象

特别注意:

①什么时候值是undefined? 

声明变量但是没有赋值比如var a;和没有声明的变量,用typeof检测都是undefined

②""和null一样么?

在类型上当然是不一样啊,一个是空字符串,一个是空对象哦  如果null==""判断,那一定是false

null代表对象没有进行实例化

""代表对象已经实例化了,实例了一个空的字符串

③null==undefined 为什么是true?

 因为undefined派生自null,ecma-262规定对他们进行相等性测试要返回true,目的是为了兼容老的网站。

④因为声明变量但是没有赋值比如var a;和没有声明的变量,都是undefined,undefined的报错的情况下你不知道是定义的还是没定义的变量

不赋值的情况下,初始化变量上要var a = null;再报undefined的错误那就是你没定义这个变量了。

 

typeof是检测数据类型用的

var a="sdfds";
typeof a;
typeof(a);//这里两种书写方式是一样的
var a = ""var b=nullvar c;
var d=funciton(){};
var e= new Object();

typeof a;// string
typeof b;//object
typeof c;//undefined
typeof d;//funciton
typeof e;//object

typeof 检测null返回的是object,因为null表示一个空对象指针,所以用typeof判断是不是null类型不可行

function在数据类型里面是object,所以用typeof可以判断是不是function。

posted @ 2017-06-12 16:32  crystalhuhu  阅读(254)  评论(0编辑  收藏  举报