1. なぜ未定義になる必要があるのでしょうか?
未定義は JavaScript の予約語ではないため、後で変数を検出するために未定義を使用する必要がある場合、検出された値は不正確になります。
例を挙げてください:
var undefined=10; function sum(a,b){ if(a===undefined||b===undefined){ console.log("参数不正确"); }18101130357 return a+b; }
現時点では、すべてのブラウザと互換性を持たせるために、純粋な undefinde を取得する必要があります
2. 純粋な未定義を取得するには?
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.
2) 代入の仮パラメータを渡します
[ケース]
function(_undefined){ //函数体中不给_undefined赋值,形参_undefined的值就是undefined,在这个函数用就可以使用_undefined了 }
3) 未割り当ての変数
例: var num //原理は 2) と同じです慣れ親しんだことに飽きずに、毎日少しずつ進歩してください。未知のことを恐れず、毎日少しずつ学びましょう。
PS: js は未定義の型を決定します
if (reValue== undefined){ alert("undefined"); } 发现判断不出来,最后查了下资料要用typeof 方法: if (typeof(reValue) == "undefined") { alert("undefined"); }