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

 更新时间:2013年12月04日 08:44:58   作者:  
这篇文章主要是对JavaScript判断变量是否为undefined的两种写法区别进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助

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

复制代码 代码如下:

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

// 方式2
age === undefined

这两种写法有什么区别吗? 应该使用哪一种呢?看看下面的例子
复制代码 代码如下:

typeof age === 'undefined'; // true

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

再看另一个例子

复制代码 代码如下:

age === undefined; // 报错

Firebug提示age is not defined,



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

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

相关文章

  • js兼容火狐获取图片宽和高的方法

    js兼容火狐获取图片宽和高的方法

    这篇文章主要介绍了js兼容火狐获取图片宽和高的方法,涉及javascript图片操作的相关技巧,需要的朋友可以参考下
    2015-05-05
  • ES6中promise详解及用法实例

    ES6中promise详解及用法实例

    Promise是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大,下面这篇文章主要给大家介绍了关于ES6中promise详解及用法的相关资料,需要的朋友可以参考下
    2022-11-11
  • 使用Webpack压缩与转译JavaScript代码的操作方法

    使用Webpack压缩与转译JavaScript代码的操作方法

    在Web开发中,代码的性能和加载时间是用户体验的重要组成部分,为此,将JavaScript代码压缩和优化是发布前一个必不可少的步骤,所以本文给大家介绍了如何使用Webpack压缩与转译JavaScript代码,需要的朋友可以参考下
    2024-05-05
  • js获取当前页的URL与window.location.href简单方法

    js获取当前页的URL与window.location.href简单方法

    下面小编就为大家带来一篇js获取当前页的URL与window.location.href简单方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • 关于Google发布的JavaScript代码规范你要知道哪些

    关于Google发布的JavaScript代码规范你要知道哪些

    代码规范并不是一种编写正确JavaScript代码的规则,而是为了保持源代码编写模式一致的一种选择。这篇文章给大家介绍了关于Google发布的JavaScript代码规范你要知道哪些,感兴趣的朋友一起看看吧
    2018-04-04
  • 动态加载图片路径 保持JavaScript控件的相对独立性

    动态加载图片路径 保持JavaScript控件的相对独立性

    根据新界面的要求,需要一部分图片来增强日期控件的美观性。考虑到既要实现加载图表的目标,又要保持控件的独立性以便将来的移植。
    2010-09-09
  • js同时按下两个方向键

    js同时按下两个方向键

    本文通过实例代码给大家介绍了js同时按下两个方向键的实现方法,感兴趣的朋友跟随脚本之家小编一起看看吧
    2007-12-12
  • 调整小数的格式保留小数点后两位

    调整小数的格式保留小数点后两位

    调整小数的格式,如保留小数点后两位等等在开发过程中经常会遇到,下面本文搜集了一些不错的实现方法与分享
    2014-05-05
  • 比JSON.stringify快两倍的fast-json-stringify性能对比分析

    比JSON.stringify快两倍的fast-json-stringify性能对比分析

    这篇文章主要为大家介绍了比JSON.stringify快两倍的fast-json-stringify性能对比分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • JavaScript作用域链示例分享

    JavaScript作用域链示例分享

    作用域是JavaScript最重要的概念之一,想要学好JavaScript就需要理解JavaScript作用域和作用域链的工作原理。今天这篇文章对JavaScript作用域链作简单的介绍,希望能帮助大家更好的学习JavaScript。
    2014-05-05

最新评论