-1

重複の可能性:
javascriptで未定義またはnull変数をチェックする方法

JavaScriptで定義された変数を確認したい。次のいくつかの例を見て、Javascriptで未定義の「a」をチェックする(そして他に何もチェックしない)のに最適な方法を教えてください。

1

if(a === 未定義) { ... }

2番目

if(a === "未定義") { ... }

三番

if(typeof a == "undefined") { ... }

過去

もし) { ... }

4

3 に答える 3

2

if(typeof a == "undefined") { ... }変数が未定義かどうかを確認するための最良の方法です。
if(a === undefined) { ... }多くの場合同じことですが、一般的な信念に反して、「未定義」はjavascriptのキーワードではなく、実際に値を割り当てることができます。また、a宣言または初期化されていない場合、エラーがスローされます。

if(a === "undefined") { ... }aが「undefined」の値を持つ文字列であるかどうかをチェックし、および0
if(a) { ... }などのすべての偽の値に対してtrueを返します。null

于 2012-07-23T03:17:56.940 に答える
2
if (typeof a == "undefined") {
    ....
}
于 2012-07-23T03:18:10.887 に答える
2

undefinedjavascriptでは実際の値なので、すでに定義されている変数に値が割り当てられているa === "undefined"かどうかをチェックしているだけです。undefined変数がまだ持ち上げられていない場合は、素晴らしいエラーが発生します。

if(a)aの値がまたはであるtrueかどうかをチェックしていますfalseundefinedJSでは、他の多くの値がfalseであるため、falseとして機能します。それでも、変数が以前に宣言されていない場合は、これもエラーをスローします。

typeof a === "undefined"まだ存在していない可能性のある変数をチェックする正しい方法です。

于 2012-07-23T03:20:58.217 に答える