0
まあ、私の質問は、変数がJavascriptに存在するかどうかを確認する最も良い方法は?
例は明白である:
デフォルト値undefined
でa
を定義します。
a
varが存在するかどうかを確認したい場合は、私がしようとします
var a;
しかし、この場合、a
があり、a
の値はundefined
ですが、boolean evaluation
これはfalse
です。
var a; // default value is 'undefined'
if (a) {
alert('a exists');
} else {
alert("a don't exists")
}
私はまた、次の例を試すことができますが、この例では、エラーを生成します。
// var a;
// a is not defined
if (a) {
alert('a exists');
} else {
alert("a don't exists")
}
そして、この例では、私はtypeof
てみてください。しかし、a
はデフォルトでundefined
の値で定義されています。
var a;
if (typeof a != 'undefined') {
alert('a exists');
} else {
alert("a don't exists")
}
そして、この例では
console.log ('var a exists:', window.hasOwnProperty('a'));
変数が実際に存在するとなぜかどうかを確認するための最良の方法は何ですか?
ありがとうございました。
[JavaScriptの変数が存在する場合(初期化/定義されている)を確認(http://stackoverflow.com/questions/5113374/javascript-check-if-variable-existsの可能な重複-is-defined-initialized) – Dekel
デフォルトで変数aが未定義の場合、(typeof a == "undefined")をチェックします。 – MCMXCII
最初は 'a === undefined'です。 2番目の場合、lintersを使って開発者コンソールを見て、 'var a'を忘れたバグを修正することができます。有用なエラーメッセージを隠す不要な 'typeof'ハックを使用しないで、バグを検出しないようにしてください。 –