📌
[Javascript] Lodashによる空判定の返り値まとめ
背景
Lodashが使われている案件の開発中に以下のような場面で本記事に記載する内容を調べる機会がありました。
- 使用されているLodashの関数の返り値がどうなるのか分からない
- 空判定を行いたいがどの関数を使用することが適切なのか分からない
空判定と言ってもnull, undefined, ""(空文字), 0など、状況によって何を「空」として扱いたいか変わるかと思います。
今回はLodashで用意されている空判定に使われるいくつかの関数の返り値が引数によってどうなるのかを表にまとめておきます。
Lodashとは?
Javascriptで扱える便利な関数をまとめて提供しているライブラリのことです。
どのような関数があるのかは以下の公式サイトを参照ください。
返り値まとめ
Lodashには他にもis系の真偽値を返す関数はありますが、空判定を行いたい場合に使いそうなものをいくつかピックアップしてまとめています。
_.isEmpty() | _.isNaN() | _.isNil() | _.isNull() | _.isUndefined() | |
---|---|---|---|---|---|
NaN | true | true | false | false | false |
null | true | false | true | true | false |
undefined | true | false | true | false | true |
false | true | false | false | false | false |
true | true | false | false | false | false |
0 | true | false | false | false | false |
1 | true | false | false | false | false |
“”(空文字) | true | false | false | false | false |
“ ”(スペース) | false | false | false | false | false |
“文字” | false | false | false | false | false |
[] | true | false | false | false | false |
[1,2] | false | false | false | false | false |
{} | true | false | false | false | false |
{name: “taro”} | false | false | false | false | false |
Discussion