JavaScript中undefined和null的区别


Posted in Javascript onMay 03, 2017

 JavaScript中undefined和null的区别

JavaScript两个表示”无”的值:undefined和null。我在平时只是null用的多一点,undefined只是在报错中经常遇到。下面针对这两个数据类型的异同做一下详细的比较。

1.undefined和null在if语句中,都会被自动转为false,相等运算符直接报告两者相等。

!null==!undefined==true

2.null表示”没有对象”,即该处不应该有值。典型用法是:

      (1) 作为函数的参数,表示该函数的参数不是对象。

      (2) 作为对象原型链的终点。

Object.getPrototypeOf(Object.prototype) // null

undefined表示”缺少值”,就是此处应该有一个值,但是还没有定义。典型用法是:

    (1)变量被声明了,但没有赋值时,就等于undefined。

    (2) 调用函数时,应该提供的参数没有提供,该参数等于undefined。

    (3)对象没有赋值的属性,该属性的值为undefined。

    (4)函数没有返回值时,默认返回undefined。

var i;
    i // undefined

    function f(x){console.log(x)}
    f() // undefined

    var o = new Object();
    o.p // undefined

    var x = f();
    x // undefined

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
如何在Mozilla Gecko 用Javascript加载XSL
Jan 09 Javascript
js 获取Listbox选择的值的代码
Apr 15 Javascript
jQuery中验证表单提交方式及序列化表单内容的实现
Jan 06 Javascript
JavaScript中var关键字的使用详解
Aug 14 Javascript
jQuery增加、删除及修改select option的方法
Aug 19 Javascript
使用jQuery的toggle()方法对HTML标签进行显示、隐藏的方法(示例)
Sep 01 Javascript
JavaScript制作简单分页插件
Sep 11 Javascript
BootStrap 下拉菜单点击之后不会出现下拉菜单(下拉菜单不弹出)的解决方案
Dec 14 Javascript
浅谈react+es6+webpack的基础配置
Aug 09 Javascript
Easy UI动态树点击文字实现展开关闭功能
Sep 30 Javascript
Bootbox将后台JSON数据填充Form表单的实例代码
Sep 10 Javascript
JSONP原理及应用实例详解
Sep 13 Javascript
Node.js对MongoDB数据库实现模糊查询的方法
May 03 #Javascript
xmlplus组件设计系列之文本框(TextBox)(3)
May 03 #Javascript
利用Mongoose让JSON数据直接插入或更新到MongoDB
May 03 #Javascript
xmlplus组件设计系列之选项卡(Tabbar)(5)
May 03 #Javascript
javascript过滤数组重复元素的实现方法
May 03 #Javascript
JS实现图片点击后出现模态框效果
May 03 #Javascript
xmlplus组件设计系列之下拉刷新(PullRefresh)(6)
May 03 #Javascript
You might like
PHP网站提速三大“软”招
2006/10/09 PHP
PHP自动生成表单代码分享
2015/06/19 PHP
PHP进行批量任务处理不超时的解决方法
2016/07/11 PHP
php 使用ActiveMQ发送消息,与处理消息操作示例
2020/02/23 PHP
YUI 读码日记之 YAHOO.util.Dom - Part.1
2008/03/22 Javascript
js操作ajax返回的json的注意问题!
2010/02/23 Javascript
jQuery入门知识简介
2010/03/04 Javascript
jQuery EasyUI API 中文文档 - Form表单
2011/10/06 Javascript
jquery ajax对特殊字符进行转义防止js注入使用示例
2013/11/21 Javascript
jQuery实现跨域
2015/02/03 Javascript
JavaScript中Number.MIN_VALUE属性的使用示例
2015/06/04 Javascript
Bootstrap精简教程中秋大放送
2016/09/15 Javascript
Vue组件中的data必须是一个function的原因浅析
2018/09/03 Javascript
vue自定义tap指令及tap事件的实现
2018/09/18 Javascript
微信小程序之左右布局的实现代码
2019/12/13 Javascript
vue使用原生swiper代码实例
2020/02/05 Javascript
15个简单的JS编码标准让你的代码更整洁(小结)
2020/07/16 Javascript
[02:27]2014DOTA2国际邀请赛 VG赛后采访:更大的挑战在等着我们
2014/07/13 DOTA
简单的通用表达式求10乘阶示例
2014/03/03 Python
Python selenium 父子、兄弟、相邻节点定位方式详解
2016/09/15 Python
python 实现登录网页的操作方法
2018/05/11 Python
Python3 关于pycharm自动导入包快捷设置的方法
2019/01/16 Python
Python 实现数据结构中的的栈队列
2019/05/16 Python
python使用socket实现的传输demo示例【基于TCP协议】
2019/09/24 Python
浅析CSS3 用text-overflow解决文字排版问题
2020/10/28 HTML / CSS
eDreams葡萄牙:全球最大的在线旅行社之一
2019/04/15 全球购物
简述你对Statement,PreparedStatement,CallableStatement的理解
2013/03/25 面试题
农村婚礼证婚词
2014/01/08 职场文书
打架检讨书400字
2014/01/17 职场文书
工厂保安员岗位职责
2014/01/31 职场文书
社会学专业学生职业规划书
2014/02/07 职场文书
网络管理员岗位职责
2014/03/17 职场文书
检察院对照“四风”认真查找问题落实整改措施
2014/09/26 职场文书
2016国庆节活动宣传语
2015/11/25 职场文书
新手入门Jvm-- JVM对象创建与内存分配机制
2021/06/18 Java/Android
关于Mybatis中SQL节点的深入解析
2022/03/19 Java/Android