JavaScript で未定義の変数を確認する方法 質問する

JavaScript で未定義の変数を確認する方法 質問する

変数が定義されているかどうかを確認したい。例えば、次のコードは未定義エラーをスローする。

alert( x );

このエラーをどうやって見つければよいのでしょうか?

ベストアンサー1

JavaScript では、nullはオブジェクトです。存在しないものには別の値 がありますundefined。DOM は、nullドキュメント内で何らかの構造が見つからない場合はほとんどの場合 を返しますが、JavaScript 自体ではundefinedという値が使用されます。

2 番目に、いいえ、直接同等のものはありません。 を具体的に確認したい場合はnull、次のようにします。

if (yourvar === null) // Does not execute if yourvar is `undefined`

変数が存在するかどうかを確認したい場合は、try/でのみ実行できますcatch。 は、typeof宣言されていない変数と の値で宣言された変数をundefined同等として扱うためです。

しかし、変数が宣言されているかどうかを確認するには次のようにしますundefined

if (yourvar !== undefined) // Any scope

以前は、変数と同じようにtypeof再割り当てが可能だったため、 undefined を安全にチェックするには演算子を使用する必要がありました。以前の方法は次のようでした。undefined

if (typeof yourvar !== 'undefined') // Any scope

undefined再割り当て可能という問題は、2009 年にリリースされた ECMAScript 5 で修正されました。しばらくの間読み取り専用であったas を使用せずに、と を安全に使用し===!==テストできるようになりました。undefinedtypeofundefined

メンバーが独立して存在するかどうかを知りたいが、その値は気にしない場合は、次のようにします。

if ('membername' in object) // With inheritance
if (object.hasOwnProperty('membername')) // Without inheritance

変数が真実の:

if (yourvar)

ソース

おすすめ記事