ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript で Null 変数または未定義変数を確実にチェックするにはどうすればよいですか?

JavaScript で Null 変数または未定義変数を確実にチェックするにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-31 17:08:02932ブラウズ

How Can I Reliably Check for Null or Undefined Variables in JavaScript?

JavaScript における信頼性の高い Null 変数および未定義変数の検出の探索

JavaScript では、変数が定義されているか、値があるかを確認することが繰り返し行われる可能性があります。タスク。多くの開発者は次のパターンに頼っています:

<code class="javascript">if (typeof(some_variable) != 'undefined' && some_variable != null) {
    // Do something with some_variable
}</code>

この方法は信頼性がありますが、冗長になる可能性があります。一部のソースでは、単に変数が存在するかどうかを確認するだけでも同じ効果があると示唆しています:

<code class="javascript">if (some_variable) {
    // Do something with some_variable
}</code>

ただし、Firebug などの特定の開発環境では、2 番目のアプローチで some_variable が定義されていない場合にエラーが報告されます。

null または未定義の変数をチェックするより効率的な方法は、次の構文を利用することです:

<code class="javascript">if (some_variable == null) {
    // some_variable is either null or undefined
}</code>

この代替方法は冗長バージョンと同等であり、Firebug などの開発ツールでもサポートされています。

注:

  1. 変数は、この省略表現手法を使用する前に宣言する必要があります。そうしないと、ReferenceError が発生します。ただし、オプションの引数やオブジェクト プロパティのチェックには安全に使用できます。
  2. このチェックの別の、ただし等価ではないバリアントには、0、NaN、false、または空の文字列の変数が含まれます:
<code class="javascript">if (!some_variable) {
    // some_variable is either null, undefined, 0, NaN, false, or an empty string
}</code>
  1. 通常、== よりも厳密な等価性チェック (===) を使用することが推奨されます。ただし、推奨される == null 比較は、このルールの例外です。

2021-03 更新:

最新のブラウザーは、Nullish 合体演算子 (? ?) および論理ヌル代入 (??=) は、変数がヌルまたは未定義の場合にデフォルト値を割り当てる簡潔な方法を提供します:

<code class="javascript">if (a.speed == null) {
    // Set default if null or undefined
    a.speed = 42;
}</code>

これは、ヌル合体演算子を使用して書き換えることができます:

<code class="javascript">a.speed ??= 42;</code>

以上がJavaScript で Null 変数または未定義変数を確実にチェックするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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