在JS中如何判断undefined和null
不当用法
有时为了判断某个值有效,JS新手会写这种臃肿代码:
if (data != null && typeof(data) != undefined && data != '') {...
}
为避免这种情况,首先要了解undefined和null的区别。
什么是undefined和null
当声明的变量未被初始化时,默认值为undefined。如:
let myVal; // undefined
null表示尚未存在的对象。如:
let testNode = this.node.getChildByName('noExist'); // 没有noExist节点,testNode为null
如何判断undefined和null
测试证明对undefined、null和空字符串取反为true,对其余任何值取反都为false。如:
!undefined; // true
!null; // true
!''; // true
!1; // false
!'123'; // false
所以,如果想判断一个值是undefined、null和空字符串中的一种,只要用 ! 就可以。如:
if (!data) {...
}
同理,如果想判断一个值不是undefined、null和空字符串中的一种,则用 !! 就可以。如:
if (!!data) {...
}
在JS中如何判断undefined和null相关推荐
- JS 中如何判断 undefined 和 null
为什么80%的码农都做不了架构师?>>> JS 中如何判断 undefined JavaScript 中有两个特殊数据类型:undefined 和 null,下节介绍了 nul ...
- js中如何判断undefined
js中如何判断undefined 判断是否undefined 判断是否undefined var a= undefined; if (typeof(a) == "undefined" ...
- php undefined 判断,JS中如何判断null、undefined与NaN
javascript中如何判断一个变量是否是null,undefined还是NaN呢?下面我们看看具体的判断方法吧. 主要是通过 typeof 这个方法去判断,typeof 返回的是字符串,有六种可能 ...
- js判断undefined和null
js判断undefined var exp = undefined; if (typeof(exp) == "undefined") {alert("undefined& ...
- Js如何判断undefined和null
判断是否为undefined var example = undefined; if (typeof(example) == "undefined") {console.log(& ...
- 关于js中0==‘‘判断为True
在做项目的时候为SQL语句的执行加了一条判断语句,if(value!=null&&value!='')的时候执行SQL,本意是如果值不为null或者空字符串则执行赋值语句,发现当传过来 ...
- 在js中如何判断一个对象是否为空
网上已经有很多的回答了分别是 for in (jquery中就是这么实现的) for of JSON.stringify() == '{}' Object.getOwnPropertyNames() ...
- JS中如何判断null
var exp = null; if (exp == null) { alert("is null"); } exp 为 undefined 时,也会得到与 null 相同的结果, ...
- 在JS中如何判断所输入的是一个数、整数、正数、非数值?
1.判断是否为一个数字: Number(num)不为 NaN,说明为数字 2. 判断一个数为正数: var num=prompt("请输入:");if(Number(num)> ...
最新文章
- CentOS安装Google浏览器
- MAT之NSL:CPK_NN神经网络实现预测哪个样本与哪个样本处在同一层,从而科学规避我国煤矿突水灾难
- numpy.ndarray.view()(懵逼,看不太懂???)(view不会开辟新的内存空间)
- 编译原理中词法分析的递归下降分析法实例--能被5整除的二进制数---c语言实现
- 第1届ICPC青少年程序设计竞赛(正式赛)A 题 - Divide
- 【图像处理基础知识】中文车牌识别API-HyperLPR的应用与相关学习资料(python版)
- docker 删除镜像时报错Error response from daemon: conflict: unable to delete xxx (must be forced) -
- 蔡先生论道大数据之六 : 打破对“精准性”的执着
- UIAlertController (UIActionSheet, UIAlertView is deprecated in iOS 8.)
- 非特定人语音识别,speaker-independent speech recognition,音标,读音,翻译,英文例句,英语词典...
- jquery替换节点
- 数字图像处理入门(冈萨雷斯第三版)
- 用谷歌浏览器如何下载哔哩哔哩中的视频
- python实现seo疯狂外链发送工具
- 智能合约安全审计指南
- Windows 8安装软件时遇到运行时错误‘339’ MSCOMCTL.ocx或其附件之一未注册
- 冬登高峰山,问禅铁瓦寺
- MySQL学习_数据库和表的基本操作
- 《把时间当做朋友-李笑来》
- Notepad++查看二进制文件——HexEditor插件
热门文章
- 0001-Two Sum(两数之和)
- mysql avg 报错_MySQL报错汇总
- 调度场算法与逆波兰表达式
- POJ4449(三维凸包+空间坐标旋转+二维凸包)
- Delphi之virtual,dynamic,abstract
- 数据库脱机和分离的区别
- C++ 虚函数与纯虚函数
- Python 日志模块Loguru的使用
- TCP/IP协议栈到底是内核态好还是用户态好?
- Linux(CentOS)中常用软件安装,使用及异常——Zookeeper, Kafka