JavaScript中的null和undefined用法解析


Posted in Javascript onSeptember 30, 2019

1.概述

null和undefined属于js中两种不同的基本数据类型,都可以表示“没有”,含义非常相似。将一个变量赋值为undefined或null,老实说,语法效果几乎没区别。并且在if语句的判断条件中,它们都会自动转为false,相等运算符(==)甚至直接报告两者相等

var a = null;
var b = undefined;
if (!a) {
 console.log('a is false');
}//a is false
if (!b) {
 console.log('b is false');
}//b is false
if (null == undefined) {
 console.log('null == undefined is true')
}//null == undefined is true

null是一个表示“空”的对象,转为数值时为0;undefined是一个表示"此处无定义"的原始值,转为数值时为NaN。

Number(null); // 0
null + 9; // 9
Number(undefined); // NaN
undefined + 9; // NaN

2.用法和含义

对于null和undefined,大致可以像下面这样理解。null表示空值,即该处的值现在为空。调用函数时,某个参数未设置任何值,这时就可以传入null,表示该参数为空。比如,某个函数接受引擎抛出的错误作为参数,如果运行过程中未出错,那么这个参数就会传入null,表示未发生错误。undefined表示“未定义”,下面是返回undefined的典型场景。

// 变量声明了,但没有赋值
var i;
i // undefined

// 调用函数时,应该提供的参数没有提供,该参数等于 undefined
function f(x) {
 return x;
}
f() // undefined

// 对象没有赋值的属性
var o = new Object();
o.p // undefined

// 函数没有返回值时,默认返回 undefined
function f() {}
f() // undefined

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
3分钟写出来的Jquery版checkbox全选反选功能
Oct 23 Javascript
JavaScript实现的encode64加密算法实例分析
Apr 15 Javascript
JavaScript对Cookie进行读写操作实例
Jul 25 Javascript
jQuery EasyUI 右键菜单--关闭标签/选项卡的简单实例
Oct 10 Javascript
详解JavaScript模块化开发
Dec 04 Javascript
React中使用collections时key的重要性详解
Aug 07 Javascript
javascript 中模板方法单例的实现方法
Oct 17 Javascript
JavaScript数组及常见操作方法小结
Nov 13 Javascript
JavaScript中的类型检查
Feb 03 Javascript
javascript实现京东登录显示隐藏密码
Aug 02 Javascript
微信小程序实现点击生成随机验证码
Sep 09 Javascript
jQuery实现影院选座订座效果
Apr 13 jQuery
vue resource发送请求的几种方式
Sep 30 #Javascript
Bootstrap table 实现树形表格联动选中联动取消功能
Sep 30 #Javascript
bootstrap table实现iview固定列的效果实例代码详解
Sep 30 #Javascript
JavaScript实现图片上传并预览并提交ajax
Sep 30 #Javascript
浅探express路由和中间件的实现
Sep 30 #Javascript
JavaScript实现单图片上传并预览功能
Sep 30 #Javascript
解决vue cli使用typescript后打包巨慢的问题
Sep 30 #Javascript
You might like
php运行出现Call to undefined function curl_init()的解决方法
2010/11/02 PHP
php入门之连接mysql数据库的一个类
2012/04/21 PHP
Yii快速入门经典教程
2015/12/28 PHP
javascript高亮效果的二种实现方法
2008/09/14 Javascript
JavaScript delete操作符应用实例
2009/01/13 Javascript
jQuery实现带滚动线条导航效果的方法
2015/01/30 Javascript
JavaScript中setMonth()方法的使用详解
2015/06/11 Javascript
基于JS实现PHP的sprintf函数实例
2015/11/14 Javascript
关于function类中定义变量this的简单说明
2016/05/28 Javascript
BootstrapTable请求数据时设置超时(timeout)的方法
2017/01/22 Javascript
Angularjs+bootstrap+table多选(全选)支持单击行选中实现编辑、删除功能
2017/03/27 Javascript
html5+canvas实现支持触屏的签名插件教程
2017/05/08 Javascript
QRCode.js:基于JQuery的生成二维码JS库的使用
2017/06/23 jQuery
基于React+Redux的SSR实现方法
2018/07/03 Javascript
浅谈ElementUI中switch回调函数change的参数问题
2018/08/24 Javascript
微信小程序实现的一键连接wifi功能示例
2019/04/24 Javascript
基于canvasJS在PHP中制作动态图表
2020/05/30 Javascript
JS简易计算器实例讲解
2020/06/30 Javascript
Python sys.argv用法实例
2015/05/28 Python
使用Python设计一个代码统计工具
2018/04/04 Python
python读取几个G的csv文件方法
2019/01/07 Python
Python Excel处理库openpyxl使用详解
2019/05/09 Python
python jenkins 打包构建代码的示例代码
2019/11/29 Python
python如何运行js语句
2020/09/09 Python
英国儿童设计师服装的领先零售商:Base
2019/03/17 全球购物
怎样自定义一个异常类
2016/09/27 面试题
竞聘上岗演讲稿范文
2014/01/10 职场文书
给老师的一封建议书
2014/03/13 职场文书
送温暖献爱心活动总结
2014/07/08 职场文书
电子工程求职信
2014/07/17 职场文书
幼儿园六一亲子活动方案
2014/08/26 职场文书
节能环保演讲稿
2014/08/28 职场文书
办公室主任个人对照检查材料思想汇报
2014/10/11 职场文书
天鹅湖观后感
2015/06/09 职场文书
世界文化遗产导游词
2019/08/07 职场文书
Nginx服务器添加Systemd自定义服务过程解析
2021/03/31 Servers