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 相关文章推荐
基于jquery的高性能td和input切换并可修改内容实现代码
Jan 09 Javascript
document.write()及其输出内容的样式、位置控制
Aug 12 Javascript
js遍历json的key和value的实例
Jan 22 Javascript
javascript 通过键名获取键盘的keyCode方法
Dec 31 Javascript
Vue 源码分析之 Observer实现过程
Mar 29 Javascript
Vue 中mixin 的用法详解
Apr 23 Javascript
vue超时计算的组件实例代码
Jul 09 Javascript
详解Vue一个案例引发「内容分发slot」的最全总结
Dec 02 Javascript
新手快速上手webpack4打包工具的使用详解
Jan 28 Javascript
js计算两个时间差 天 时 分 秒 毫秒的代码
May 21 Javascript
Vue中import from的来源及省略后缀与加载文件夹问题
Feb 09 Javascript
VueCli4项目配置反向代理proxy的方法步骤
May 17 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学习笔记 面向对象的构造与析构方法
2011/06/13 PHP
PHP句法规则详解 入门学习
2011/11/09 PHP
PHP Imagick完美实现图片裁切、生成缩略图、添加水印
2016/02/22 PHP
替换php字符串中的单引号为双引号的方法
2017/02/16 PHP
Mac系统下搭建Nginx+php-fpm实例讲解
2020/12/15 PHP
javascript for循环设法提高性能
2010/02/24 Javascript
JavaScript 拾碎[三] 使用className属性
2010/10/16 Javascript
三种方式获取XMLHttpRequest对象
2014/04/21 Javascript
js事件绑定快捷键以ctrl+k为例
2014/09/30 Javascript
JavaScript中this详解
2015/09/01 Javascript
js实现简洁的TAB滑动门效果代码
2015/09/06 Javascript
js显示当前日期时间和星期几
2015/10/22 Javascript
js实现跨域的几种方法汇总(图片ping、JSONP和CORS)
2015/10/25 Javascript
深入理解JavaScript中为什么string可以拥有方法
2016/05/24 Javascript
JS+jQuery实现注册信息的验证功能
2017/09/26 jQuery
Vue插件从封装到发布的完整步骤记录
2019/02/28 Javascript
vue-mugen-scroll组件实现pc端滚动刷新
2019/08/16 Javascript
使用jQuery实现掷骰子游戏
2019/10/24 jQuery
Node.js fs模块原理及常见用途
2020/10/22 Javascript
Python中使用动态变量名的方法
2014/05/06 Python
Python pickle模块用法实例
2015/04/14 Python
解决python使用open打开文件中文乱码的问题
2017/12/29 Python
利用Python+阿里云实现DDNS动态域名解析的方法
2019/04/01 Python
python障碍式期权定价公式
2019/07/19 Python
解决pycharm编辑区显示yaml文件层级结构遇中文乱码问题
2020/04/27 Python
Python docutils文档编译过程方法解析
2020/06/23 Python
美国Rue La La闪购网站:奢侈品、中高档品牌限时折扣
2016/10/19 全球购物
播音主持专业个人自我评价
2014/01/09 职场文书
《满井游记》教学反思
2014/02/26 职场文书
文明村创建实施方案
2014/03/27 职场文书
建筑结构施工求职信
2014/07/11 职场文书
2014年幼儿园德育工作总结
2014/12/17 职场文书
2015年党支部公开承诺书
2015/01/22 职场文书
体育活动总结
2015/02/04 职场文书
防卫过当辩护词
2015/05/21 职场文书
会计岗位工作总结
2015/08/12 职场文书