JavaScript中获取纯正的undefined的方法


Posted in Javascript onMarch 06, 2016

1、为什么要获取undefined?

因为undefined在javascript中不是保留字,可以被用户当做变量来赋值,这样如果我们后期需要用到undefined来检测一个变量的话,那么检测的值就不准确了;

举个栗子:

var undefined=10;
function sum(a,b){
 if(a===undefined||b===undefined){
  console.log("参数不正确");
 }18101130357
 return a+b;
}

sum(10,10)->本来正确的参数,控制台输出的确实"参数错误";

这时候,为了兼容所有的浏览器,我们就需要获取一个纯正的undefinde

2、怎样获取纯正的undefined?

1) void (0):

在ECMAScript 262规范,有如下描述:

The void Operator
The production UnaryExpression : void UnaryExpression is evaluated as follows:
Let expr be the result of evaluating UnaryExpression.
Call GetValue(expr).
Return undefined.

总之,记住无论void后的表达式是什么,void操作符都会返回undefined就好了

2) 传入一个为赋值的形参

[案例]

function(_undefined){
//函数体中不给_undefined赋值,形参_undefined的值就是undefined,在这个函数用就可以使用_undefined了
}

3)未赋值的变量

举个栗子:var num  //道理和2)是一样的

不要厌烦熟悉的事物,每天都进步一点;不要畏惧陌生的事物,每天都学习一点;

PS:js判断undefined类型

if (reValue== undefined){
 alert("undefined");
 }
 发现判断不出来,最后查了下资料要用typeof
方法:
if (typeof(reValue) == "undefined") { 
 alert("undefined"); 
}

typeof 返回的是字符串,有六种可能:"number"、"string"、"boolean"、"object"、"function"、"undefined"

Javascript 相关文章推荐
javascript 从if else 到 switch case 再到抽象
Jul 17 Javascript
JQuery 应用 JQuery.groupTable.js
Dec 15 Javascript
jQuery下通过replace字符串替换实现大小图片切换
May 22 Javascript
jQuery Ajax提交表单查询获得数据实例代码
Sep 19 Javascript
关于火狐(firefox)及ie下event获取的两种方法
Dec 27 Javascript
js取得url地址参数实例
Feb 22 Javascript
常见表单重复提交问题整理及解决方法
Nov 13 Javascript
js实现按钮控制带有停顿效果的图片滚动
Aug 30 Javascript
javascript 显示全局变量与隐式全局变量的区别
Feb 09 Javascript
js实现文字跑马灯效果
Feb 23 Javascript
vue中将网页打印成pdf实例代码
Jun 15 Javascript
详解如何使用nvm管理Node.js多版本
May 06 Javascript
JS面向对象编程详解
Mar 06 #Javascript
深入学习JavaScript的AngularJS框架中指令的使用方法
Mar 05 #Javascript
使用Jasmine和Karma对AngularJS页面程序进行测试
Mar 05 #Javascript
JavaScript的React框架中的JSX语法学习入门教程
Mar 05 #Javascript
在AngularJS框架中处理数据建模的方式解析
Mar 05 #Javascript
简单讲解AngularJS的Routing路由的定义与使用
Mar 05 #Javascript
整理AngularJS框架使用过程当中的一些性能优化要点
Mar 05 #Javascript
You might like
关于shopex同步ucenter的redirect问题,导致script不运行
2013/04/10 PHP
PHP多线程批量采集下载美女图片的实现代码(续)
2013/06/03 PHP
从零开始学YII2框架(三)扩展插件yii2-gird
2014/08/20 PHP
跟我学Laravel之快速入门
2014/10/15 PHP
php实现批量修改文件名称的方法
2016/07/23 PHP
php readfile()修改文件上传大小设置
2017/08/11 PHP
获取网站跟路径的javascript代码(站点及虚拟目录)
2009/10/20 Javascript
js 程序执行与顺序实现详解
2013/05/13 Javascript
jQuery实现单行文字间歇向上滚动源代码
2013/06/02 Javascript
BOOTSTRAP时间控件显示在模态框下面的bug修复
2015/02/05 Javascript
JavaScript实现判断图片是否加载完成的3种方法整理
2015/03/13 Javascript
jquery使整个div区域可以点击的方法
2015/06/24 Javascript
详解JavaScript的Date对象(制作简易钟表)
2020/04/07 Javascript
Highcharts使用简例及异步动态读取数据
2015/12/30 Javascript
vuejs动态组件给子组件传递数据的方法详解
2016/09/09 Javascript
AngularJS动态加载模块和依赖的方法分析
2016/11/08 Javascript
vue.js实现请求数据的方法示例
2017/02/07 Javascript
ReactNative实现图片上传功能的示例代码
2017/07/11 Javascript
微信小程序实现图片预览功能
2018/01/31 Javascript
浅谈react受控组件与非受控组件(小结)
2018/02/09 Javascript
使用webpack4编译并压缩ES6代码的方法示例
2019/04/24 Javascript
[02:33]DOTA2亚洲邀请赛趣味视频之吐真话筒
2018/03/31 DOTA
Python实现给文件添加内容及得到文件信息的方法
2015/05/28 Python
使用python对文件中的单词进行提取的方法示例
2018/12/21 Python
python多线程+代理池爬取天天基金网、股票数据过程解析
2019/08/13 Python
python读取tif图片时保留其16bit的编码格式实例
2020/01/13 Python
Python实现Word表格转成Excel表格的示例代码
2020/04/16 Python
matplotlib图例legend语法及设置的方法
2020/07/28 Python
Pycharm在指定目录下生成文件和删除文件的实现
2020/12/28 Python
英国顶级家庭折扣店:The Works
2017/09/06 全球购物
物理教学随笔感言
2014/02/22 职场文书
成龙洗发水广告词
2014/03/14 职场文书
2015年国庆节慰问信
2015/03/23 职场文书
公司出差管理制度范本
2015/08/05 职场文书
如何解决.cuda()加载用时很长的问题
2021/05/24 Python
如何解决springcloud feign 首次调用100%失败的问题
2021/06/23 Java/Android