Categories: JavaScript

Javascript で is_null する

PHPだと、 if (!is_null($a)) { } C#だと、 if (a != null) { } みたいにnull判定するわけですが、 JavaScriptはどうするんだろう?と思ったら、 それらしい関数は無いらしい。

そもそもJavaScriptでは、 var a; みたいに、なにも代入せずに変数を用意した時、nullではなく、undefinedという値が入っているらしいので、

if (a !== undefined) { }

とするといいらしいです。 ただし、undefined は定数ではなく、変数なので

undefined = 0;
var a;
if (a !== undefined) { alert(a); }

のように、undefined に何かの値を代入してしまうと、 のalertは実行されてしまうので注意しよう。とのこと。

じゃどうするか。というと、確実に、undefinedがundefinedとなるようにする。といいらしいです。

var undefined;
var a;
if (a !== undefined) { alert(a); }

なるほどー

でも、ちょっと周りくどいというか、なんというか。
他には、

var a;
if (a !== void 0 ) { alert(a); }

とvoid関数をつかって、undefinedを取得する方法で、こっちが一般的らしいです。

nakaike

Share
Published by
nakaike