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)是一样的

时间: 2024-10-18 23:18:21

js中如何获取纯正的undefined?的相关文章

JS中NaN、null、Undefined区别

1.NaN(not a number)非数字.不和任何数字相等,包括自己本身,可以用isNaN()判断,当praseInt()和praseFloat()不能解析时返回NaN.NaN为number对象下的一个属性,number.NaN typeof(NaN)   //return number NaN == NaN   //return FALSE 2.null 表示尚未存在的对象, 3.undefined表示尚未初始化   var a:alert(a)  //return undefined 在

JS中原始类型Null和Undefined

Undefined类型只有一个值,即undefined.当声明的变量还未被初始化时,变量的默认值为undefined.Null类型也只有一个值,即null.null用来表示尚未存在的对象,常用来表示函数企图返回一个不存在的对象. js 代码 let testTypeNum;alert(testTypeNum ==undefined); //output "true" 代码显示为true,代表testTypeNum的值即为undefined,因为没有初始化它. js 代码 alert(n

160304-02、JS 中如何判断null 和undefined

JavaScript 中有两个特殊数据类型:undefined 和 null,下节介绍了 null 的判断,下面谈谈 undefined 的判断. 以下是不正确的用法: var exp = undefined;if (exp == undefined){    alert("undefined");} exp 为 null 时,也会得到与 undefined 相同的结果,虽然 null 和 undefined 不一样.注意:要同时判断 undefined 和 null 时可使用本法.

php设置cookie,在js中如何获取

在php中设置cookie. $email="[email protected]"; setcookie("y_email",$email,time()+3600,"/"); js中获取cookie function getCookie(c_name) { if (document.cookie.length>0) { c_start=document.cookie.indexOf(c_name + "=") if (c

JS中对获取一个标签的class的方法封一个库

在JS中我们经常会会用到,获取一个标签的id var aId=document.getElementById("id") 现在虽然有getElementsByClassName这个方法,但是这个方法再ie6下兼容性存在问题,所以保险起见还是封一个获取class的库 首先先看库 /** * Created by asus on 2016/12/4 By dirk_jian. */ function getByclass(oParent,sClass){ var aEle=oParent.

js中的获取身份证中的出生日期

<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>从身份证中获取出生年月日</title> </head> <body> <script type="text/javascript"> var str = "510122199303218990"; var re = /\d

JS中如何判断null、undefined与NaN

1.判断undefined: Js代码   <span style="font-size: small;">var tmp = undefined; if (typeof(tmp) == "undefined"){ alert("undefined"); }</span> 说明:typeof 返回的是字符串,有六种可能:"number"."string"."boolean&

html中设置data-*属性值 并在js中进行获取属性值

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>ajax file</title> <script src="./js/jquery-1.12.4.min.js"></script> <script> $(function(){ // 获取data-

JS中如何获取元素

1.通过ID名称来获取元素: document get element by id 'link' document.getElementById('link'); 事件:鼠标事件.键盘事件.系统事件.表单事件.自定义事件 例:onclick 鼠标点击事件 onmouseover 鼠标移入事件 onmouseout 鼠标移出事件 如何添加事件: 元素.事件 (元素.onmouseover) 函数:可以理解为-命令,做一些事... function(函数的关键词) 语法: function abc(