この記事の例ではJSでnullを判定する方法を説明しています。参考のために皆さんと共有してください。詳細は次のとおりです:
以下は間違ったメソッドです:
var exp = null; if (exp == null) { alert("is null"); }
exp が未定義の場合、null と未定義は異なりますが、null と同じ結果が得られます。 。
注: この方法は、nullと未定義を同時に判定したい場合に使用できます。
var exp = null; if (!exp) { alert("is null"); }
exp が未定義、数値ゼロ、または false の場合、null はこの 2 つとは異なりますが、null と同じ結果が得られます。
注: この方法は、null、unknown、数値ゼロ、偽を同時に判定したい場合に使用できます。
var exp = null; if (typeof exp == "null") { alert("is null"); }
下位互換性のため、expがnullの場合、typeof nullは常にobjectを返すため、このように判断することはできません。
var exp = null; if (isNull(exp)) { alert("is null"); }
VBScript には IsNull 関数がありますが、JavaScript にはありません。
以下は正しい方法です:
var exp = null; if (!exp && typeof exp != "undefined" && exp != 0) { alert("is null"); }
typeof exp != "unknown" は未定義を除外します;
exp != 0 は数値 0 と false を除外します。
より簡単で正しい方法:
var exp = null; if (exp === null) { alert("is null"); }
ただし、DOM アプリケーションでは、null が返される場合もあれば、null が返される場合もあるため、DOM アプリケーションでは通常、(!exp) を使用して判断するだけで済みます。 unfineed の場合、具体的に null か unknown かを判断するとプログラムが複雑になってしまいます。