欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

undefined跟null

更新时间: 2014-01-05 00:51:36 责任编辑: Author_N1

 

undefined和null
工作已经将近三年,javascript没有系统的学习过,虽然工作上经常用到,但是原理知之甚少,懂语法,能写简单的javascript代码。关于javascript的书籍一本没有看完全过。反而oracle和java的书,看的不少。今年双十一,书的价钱便宜,趁此买了两本关于javascript书籍,才看前几章大有收获,写出来与大家共享。

javascript的关键字 undefined

undefined一般是默认为只有定义,没有赋值的变量一般都是默认这个值是undefined。
var a ;
alert(a);

上段代码答应出来就是undefined

变量定义没有赋值,就想上段代码默认值是undefined。也可以直接赋值为undefined,比如
var a = undefined;
alert(a)

打印出也是undefined;我们用typeof查看变量有定义,没有赋值和直接打印出没有赋值的变量
var a; 
alert(typeof(a));
alert(typeof(c))

我们在浏览器可以打印出两次nuedfined。a变量定义,没有赋值,c变量连定义都没有,更谈不上赋值。所以当用typeof来检测数据类型,当时undefined会出现以上两种情况

javascript的关键字 null
null是一个特殊的值,表示一个空指针对象,我们用typeof来检测null的数据类型时,他会返回object;如下面代码
var a = null;
alert(typeof(a));
以上代码就会打印出object;

undefined和null的之间一些特点

1、undefined和null都是javascript数据类型中,只有一个值的类型
2、当null和undefined相比较时,即:alert(undefined==null)会返回true
个人认为:null是undefined的一个子集或者说是派生值。理由:javascript的赋值的关键字var,无论是number,boolean,object等等基本类型,都是用var 变量=?,而null必须要显示的指出。即var a=null;而undefined却不需要。typeof一个null值,会显示object,说明null表示一个对象的空指针,而undefined显然表示的范围比null大。至于为什么打印出来相等,也许是javascript就是这样设置。
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 00:51:36
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/662/
本文WWW.DOC100.NET DOC100.NET版权所有。