JavaScript中获取纯正的undefined的方法

时间:2021-05-26

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 OperatorThe 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"

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章