JS中判断null的方法分析


Posted in Javascript onNovember 21, 2016

本文实例讲述了JS中判断null的方法。分享给大家供大家参考,具体如下:

以下是不正确的方法:

var exp = null;
if (exp == null)
{
  alert("is null");
}

exp 为 undefined 时,也会得到与 null 相同的结果,虽然 null 和 undefined 不一样。

注意:要同时判断 null 和 undefined 时可使用本法。

var exp = null;
if (!exp)
{
  alert("is null");
}

如果 exp 为 undefined,或数字零,或 false,也会得到与 null 相同的结果,虽然 null 和二者不一样。

注意:要同时判断 null、undefined、数字零、false 时可使用本法。

var exp = null;
if (typeof exp == "null")
{
  alert("is null");
}

为了向下兼容,exp 为 null 时,typeof null 总返回 object,所以不能这样判断。

var exp = null;
if (isNull(exp))
{
  alert("is null");
}

VBScript 中有 IsNull 这个函数,但 JavaScript 中没有。

以下是正确的方法:

var exp = null;
if (!exp && typeof exp != "undefined" && exp != 0)
{
  alert("is null");
}

typeof exp != "undefined" 排除了 undefined;

exp != 0 排除了数字零和 false。

更简单的正确的方法:

var exp = null;
if (exp === null)
{
  alert("is null");
}

尽管如此,我们在 DOM 应用中,一般只需要用 (!exp) 来判断就可以了,因为 DOM 应用中,可能返回 null,可能返回 undefined,如果具体判断 null 还是 undefined 会使程序过于复杂。

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
如何用ajax来创建一个XMLHttpRequest对象
Dec 10 Javascript
jQuery写的日历(包括日历的样式及功能)
Apr 23 Javascript
jquery的each方法使用示例分享
Mar 25 Javascript
fckeditor粘贴Word时弹出窗口取消的方法
Oct 30 Javascript
Javascript学习笔记之函数篇(四):arguments 对象
Nov 23 Javascript
极力推荐10个短小实用的JavaScript代码段
Aug 03 Javascript
JavaScript中递归实现的方法及其区别
Sep 12 Javascript
BootStrap点击保存后实现模态框自动关闭的思路(模态框)
Sep 26 Javascript
vue2里面ref的具体使用方法
Oct 27 Javascript
Vue 路由 过渡动效 数据获取方法
Jul 31 Javascript
微信小程序webview与h5通过postMessage实现实时通讯的实现
Aug 20 Javascript
Node.js创建一个Express服务的方法详解
Jan 06 Javascript
javascript 利用arguments实现可变长参数
Nov 21 #Javascript
js 点击a标签 获取a的自定义属性方法
Nov 21 #Javascript
浅谈JS读取DOM对象(标签)的自定义属性
Nov 21 #Javascript
AngularJS Phonecat实例讲解
Nov 21 #Javascript
浅谈React 属性和状态的一些总结
Nov 21 #Javascript
JavaScript中关于for循环删除数组元素内容时出现的问题
Nov 21 #Javascript
jQuery用FormData实现文件上传的方法
Nov 21 #Javascript
You might like
配置php网页显示各种语法错误
2013/09/23 PHP
PHP中的函数声明与使用详解
2017/05/27 PHP
Javascript writable特性介绍
2015/02/27 Javascript
jQuery右侧选项卡焦点图片轮播特效代码分享
2015/09/05 Javascript
jquery把int类型转换成字符串类型的方法
2016/10/07 Javascript
微信小程序 WXML、WXSS 和JS介绍及详解
2016/10/08 Javascript
Javascript之深入浅出prototype
2017/02/06 Javascript
nodejs 搭建简易服务器的图文教程(推荐)
2017/07/18 NodeJs
Vue 去除路径中的#号
2018/04/19 Javascript
用npm-run实现自动化任务的方法示例
2019/01/14 Javascript
Koa 中的错误处理解析
2019/04/09 Javascript
微信小程序class封装http代码实例
2019/08/24 Javascript
微信小程序监听用户登录事件的实现方法
2019/11/11 Javascript
[04:52]第二届DOTA2亚洲邀请赛主赛事第一天比赛集锦:OG娜迦海妖放大配合谜团大中3人
2017/04/02 DOTA
[02:01]大师之路——DOTA2完美大师赛11月论剑上海
2017/11/06 DOTA
[13:56]DAC2018 4.5SOLO赛决赛 MidOne vs Paparazi第一场
2018/04/06 DOTA
[01:20]PWL S2开团时刻第三期——团战可以输 蝙蝠必须死
2020/11/26 DOTA
Python返回真假值(True or False)小技巧
2015/04/10 Python
python 通过字符串调用对象属性或方法的实例讲解
2018/04/21 Python
python实现各种插值法(数值分析)
2019/07/30 Python
详解Python self 参数
2019/08/30 Python
python对象转字典的两种实现方式示例
2019/11/07 Python
python中的函数递归和迭代原理解析
2019/11/14 Python
解决python图像处理图像赋值后变为白色的问题
2020/06/04 Python
CSS3实现多重边框的方法总结
2016/05/31 HTML / CSS
Html5页面二次分享的实现
2018/07/30 HTML / CSS
HTML5 Blob 实现文件下载功能的示例代码
2019/11/29 HTML / CSS
初中生期末考试的自我评价
2013/12/17 职场文书
工程班组长岗位职责
2013/12/30 职场文书
《我的信念》教学反思
2014/02/15 职场文书
讲文明树新风演讲稿
2014/05/12 职场文书
2014国庆65周年领导讲话稿(3篇)
2014/09/21 职场文书
《爱的教育》读书心得
2014/11/08 职场文书
教代会闭幕词
2015/01/28 职场文书
离婚案件原告代理词
2015/05/23 职场文书
Java 超详细讲解ThreadLocal类的使用
2022/04/07 Java/Android