js中如何获取纯正的undefined?
Posted sarah
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js中如何获取纯正的undefined?相关的知识,希望对你有一定的参考价值。
1、为什么要获取undefined?
因为undefined
在javascript中不是保留字,可以被用户当做变量来赋值,这样如果我们后期需要用到undefined来检测一个变量的话,那么检测的值就不准确了;
举个栗子:
var undefined=10;
function sum(a,b){
if(a===undefined||b===undefined){
console.log("参数不正确");
}
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)是一样的
以上是关于js中如何获取纯正的undefined?的主要内容,如果未能解决你的问题,请参考以下文章
纯正商业级应用-Node.js Koa2开发微信小程序服务端
谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js
jQuery 是如何判断HTML页面加载完毕的?它的原理是啥?
浅谈JS中的!=== !=====的用法和区别 JS中Null与Undefined的区别 读取XML文件 获取路径的方式 C#中Cookie,Session,Application的(代码