JavaScript判断变量是否为undefined的两种写法区别


Posted in Javascript onDecember 04, 2013

工作中我们经常需要判断某个变量/属性是否为undefined。通常有两种写法

// 方式1 
typeof age === 'undefined'; // 方式2 
age === undefined

这两种写法有什么区别吗? 应该使用哪一种呢?看看下面的例子
typeof age === 'undefined'; // true

标识符 age 没有声明过,输出true。

再看另一个例子

age === undefined; // 报错

Firebug提示age is not defined,JavaScript判断变量是否为undefined的两种写法区别

这就是两者的区别, 即不确定age是否声明或定义时用方式1,确定的则可以用方式2。使用方式1如果变量没有声明,代码也不会报错,但方式2会报错。看似方式1容错性更好,实际会是潜伏了的Bug。变量先声明再使用永远是个好习惯。

此外,方式1是两次运算,方式2是一次。

Javascript 相关文章推荐
限制复选框的最大可选数
Jul 01 Javascript
工作需要写的一个js拖拽组件
Jul 28 Javascript
同域jQuery(跨)iframe操作DOM(示例代码)
Dec 13 Javascript
javascript中实现兼容JAVA的hashCode算法代码分享
Aug 11 Javascript
JS表的模拟方法
Feb 05 Javascript
javascript自动恢复文本框点击清除后的默认文本
Jan 12 Javascript
AngularJS中的Directive自定义一个表格
Jan 25 Javascript
详解IOS微信上Vue单页面应用JSSDK签名失败解决方案
Nov 14 Javascript
在node中使用jwt签发与验证token的方法
Apr 03 Javascript
ES6基础之数组和对象的拓展实例详解
Aug 22 Javascript
JavaScript中的全局属性与方法深入解析
Jun 14 Javascript
VUE Elemen-ui之穿梭框使用方法详解
Jan 19 Javascript
ExtJS4中使用mixins实现多继承示例
Dec 03 #Javascript
ExtJS4中的requires使用方法示例介绍
Dec 03 #Javascript
利用JS进行图片的切换即特效展示图片
Dec 03 #Javascript
JavaScript伸缩的菜单简单示例
Dec 03 #Javascript
JS window对象的top、parent、opener含义介绍
Dec 03 #Javascript
javascript实现信息的显示和隐藏如注册页面
Dec 03 #Javascript
一个js控制的导航菜单实例代码
Dec 03 #Javascript
You might like
十天学会php之第一天
2006/10/09 PHP
php 获取完整url地址
2008/12/20 PHP
PHP session有效期问题
2009/04/26 PHP
PHP 批量更新网页内容实现代码
2010/01/05 PHP
php计算两个文件相对路径的方法
2015/03/14 PHP
简单解决微信文章图片防盗链问题
2016/12/17 PHP
深入理解PHP的远程多会话调试
2017/09/21 PHP
一个页面放2段图片滚动代码出现冲突的问题如何解决
2012/12/21 Javascript
jquery自定义插件——window的实现【示例代码】
2016/05/06 Javascript
Angularjs 动态改变title标题(兼容ios)
2016/12/29 Javascript
原生js实现中奖信息无间隙滚动效果
2017/01/18 Javascript
ionic3+Angular4实现接口请求及本地json文件读取示例
2017/10/11 Javascript
angularjs 获取默认选中的单选按钮的value方法
2018/02/28 Javascript
JS实现字符串翻转的方法分析
2018/08/31 Javascript
vue项目中仿element-ui弹框效果的实例代码
2019/04/22 Javascript
Vue中使用better-scroll实现轮播图组件
2020/03/07 Javascript
python 生成器协程运算实例
2017/09/04 Python
用python的requests第三方模块抓取王者荣耀所有英雄的皮肤实例
2017/12/14 Python
python数据分析数据标准化及离散化详解
2018/02/26 Python
Python实现求一个集合所有子集的示例
2018/05/04 Python
python打包exe开机自动启动的实例(windows)
2019/06/28 Python
用Python徒手撸一个股票回测框架搭建【推荐】
2019/08/05 Python
python爬虫开发之Beautiful Soup模块从安装到详细使用方法与实例
2020/03/09 Python
Django实现将一个字典传到前端显示出来
2020/04/03 Python
keras自定义损失函数并且模型加载的写法介绍
2020/06/15 Python
简述python&pytorch 随机种子的实现
2020/10/07 Python
pandas针对excel处理的实现
2021/01/15 Python
css3绘制天猫logo实现代码
2012/11/06 HTML / CSS
曼城官方网上商店:Manchester City
2019/09/10 全球购物
医学院校毕业生自荐信范文
2014/01/01 职场文书
实习会计求职自荐信范文
2014/03/10 职场文书
优秀驾驶员先进事迹材料
2014/05/04 职场文书
医学专业大学生求职信
2014/07/12 职场文书
化工见习报告范文
2014/10/31 职场文书
2015年房产销售工作总结范文
2015/05/22 职场文书
关于golang高并发的实现与注意事项说明
2021/05/08 Golang