欢迎来到天天文库
浏览记录
ID:39874619
大小:152.00 KB
页数:10页
时间:2019-07-13
《理解javascript中undefined和null的区别》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、理解Javascript中的Null与Undefined胡赵勇-15010138326NullNull是一个类型它只有唯一的一个值那就是nullNull用来表示未存在的对象上面的代码中如果dom中没有ID为notExistElement的节点则返回truealert(null==document.getElementById('notExistElement'));UndefinedUndefined也是一个类型它也只有一个值undefinedUndefined用来表示未被定义的对象上面的代码中oValue没用被定义所以oValue的值为undefinedvaroValue;alert(o
2、Value==undefined);疑惑第一行代码没什么可说的undefined是Undefined类型所以打印出undefined第二行就让人费解了期望值应该是Null才对啊其实这个地方是JavaScript最初实现的一个错误,后来被ECMAScript沿用下来我们可以这样理解它null是一个不存在的对象的占位符alert(typeofundefined); //output "undefined"alert(typeofnull); //output "object"费解它们竟然不是一个类型为什么还相等呢按道理来说它们是不应该相等的但是ECMAScript老大认为undefined是从
3、null派生出来的,所以把它们定义为相等的了alert(null == undefined); //output "true"那怎么把它们区别开来呢?绝对等于===代表绝对等于表示类型和值都相等显然null和undefined不是一个类型的所以返回false或者alert(null === undefined); //output "false"alert(typeofnull ==typeofundefined);注意事项null是JavaScript保留关键字。null参与数值运算时其值会自动转换为0alert(1+null==1)//是true关于Undefined的注意事项不是Ja
4、vaScript的保留关键字全局对象(window)中有一个属性undefined所以顺便的NaN也是全局对象(window)的另一个特殊属性,Infinity也是。这些特殊属性都不是JavaScript的保留关键字alert('undefined' inwindow); //输出:true提高undefined性能当我们在程序中使用undefined值时,实际上使用的是window对象的undefined属性window对象的属性值是非常多的,在每一次与undefined的比较中,搜索window对象的undefined属性都会花费时间所以我们需要定一个局部变量看代码function
5、anyFunc() {varundefined;if(x == undefined) //作用域上的引用比较while(y != undefined) //作用域上的引用比较};后记这是我系列javascript教程中的一个感谢大家支持今天元旦大家忙着约会而我却刚刚送走了那份维持了一年的爱情呜呜
此文档下载收益归作者所有