理解Null和Undefined
2015-12-23 17:00
239 查看
null==0;//false undefined=="";//false null==false;//false undefined==false;//false null==undefined;//true
尽管如此,和其他相似之处,但null和undefined并不是等价的。每个作为其独特的类型的唯一成员,undefined是Undefined类型和null是Null类型。使用全等操作符(===)比较这两个值,这要求类型和值都相等,下面证明这一点:
undefined===null;//false
在JavaScript这种动态的弱类型语言中,只会默认返回一个undefined值,而不是上升为一个错误。
任何声明变量时没有提供一个初始值,都会有一个为undefined的默认值:
varfoo;//默认值为undefined
当试图访问一个不存在的对象属性或数组项时,返回一个undefined值:
vararray=[1,2,3]; varfoo=array.foo;//foo属性不存在,返回undefined varitem=array[5];//数组中没有索引为5的项,返回undefined
如果省略了函数的返回语句,返回undefined:
varvalue=(function(){})();//返回undefined
函数调用时未提供的值结果将为undefined参数值:
(function(undefined){ //参数是undefined })();
相关文章推荐
- Android版添加phonegap---横竖屏锁定插件教程
- usrp 升级fpga引发的问题
- 自动化管理工具Saltstack之安装篇(1)
- C语言宏定义##连接符和#符的使用
- 分布式与集群的联系与区别
- MYSQL 别名不存在问题
- iOS开发简单的实现后台任务(诸如后台播放音乐,定时器等)
- Javascript实现图片预加载【回调函数,多张图片】
- FMDB 用法
- viewpager增加滑动属性
- iOS在Xcode中,文件名后小方框中的A(M或C)代表的意思
- nginx配置优化
- LeetCode 033 Search in Rotated Sorted Array
- DOM操作-event触发顺序
- C语言undefined behaviour未定义行为
- (原)Linux下安装tomcat
- swift中Range的使用书名
- 【学习笔记】自定义关于wchar_t*的相关函数
- 微信开放平台开发(2) 微信登录
- 【Educational Codeforces Round 3 C】【贪心 排序】Load Balancing 最小操作步数使得数字之差尽可能小