首頁 > web前端 > js教程 > JavaScript中取得純正的undefined的方法_javascript技巧

JavaScript中取得純正的undefined的方法_javascript技巧

WBOY
發布: 2016-05-16 15:12:08
原創
1606 人瀏覽過

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"

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板