MENU

JavaScriptで空のオブジェクトと空の配列をチェックする

割とif(variable)みたいな感じでエラーチェック済ませがちだったけど、空のオブジェクト空の配列だとtrueになって条件分岐の中入ってしまうんですよね。

ほんでObject.key()とかを毎回の記述するのがめんどいので共通の関数として実装なんてことはよくあると思います。ただ一回実装したらそのプロジェクトでは終わりで次のプロジェクトではまた調べて実装してみたいなんがめんどくさいので誰でも使える共通関数としてメモしておきます。

目次

Null,undefind,空オブジェクト,空配列の場合

関数名に関して

isEmpty

isBlank

isNullOrUndefinedOrEmpty

あたりになるかと

個人的にはisEmpty

でいいかなと思ってます。

value == nullについて

これでundefindも含まれるのか?

って思う人もいると思うので軽く補足で

※これはJavaScript の 緩い等価演算子 (==) の挙動によるもの

null == nulltrue

undefined == undefinedtrue

null == undefinedtrue

って感じ

厳密等価 (===)だと

null === nulltrue

undefined === undefinedtrue

null === undefinedfalse

って感じになる

注意

value == nullの場合、空文字や、0、false自体は別な条件を設定する必要があるので注意

Faltyな値を基準にしたい場合

JavaScript では、以下の値が「Falsy(偽の値)」として評価されます:

  • undefined
  • null
  • false
  • 0
  • NaN
  • 空文字列('' または ""

これらの値に対して !value を使うと、すべて true と評価されます。

こっちのほうがはじく幅は広いので目的に応じて実装するのがいいかと

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次