ホームページ  >  記事  >  ウェブフロントエンド  >  変数が未定義かどうかを判断する JavaScript の 2 つの記述方法の違い_javascript スキル

変数が未定義かどうかを判断する JavaScript の 2 つの記述方法の違い_javascript スキル

WBOY
WBOYオリジナル
2016-05-16 17:10:511194ブラウズ

仕事では、特定の変数/プロパティが未定義かどうかを判断する必要があることがよくあります。通常、

コードをコピーする を記述する方法は 2 つあります。 コードは次のとおりです。

//方法 1
typeof age === '未定義';

// 方法 2
age === 未定義

これら 2 つの方法に違いはありますか?毛糸はどれを使うべきですか?以下の例を見てください
コードをコピーします コードは次のとおりです:

typeof age = == 'unknown '; // true

識別子の年齢が宣言されていない場合は、true を出力します。

別の例を見てください

コードをコピーします コードは次のとおりです:

age === 未定義; // エラー レポート

Firebug は、年齢が定義されていないことを通知します。

これが 2 つの違いです。つまり、年齢が宣言されているか定義されているかが不明な場合は方法 1 を使用し、確実である場合は方法 2 を使用できます。変数がメソッド 1 を使用して宣言されていない場合、コードはエラーを報告しませんが、メソッド 2 はエラーを報告します。方法 1 の方が耐障害性が高いように見えますが、実際には隠れたバグです。変数を使用する前に宣言することを常にお勧めします。

また、方法1は2回の操作、方法2は1回の操作です。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。