【JS応用|初心者向け】JavaScriptの「Falsy」を味方につけて、コードを劇的に短くする方法

こんにちは!フロントエンド開発の世界へようこそ。JavaScriptを書き始めると、必ずと言っていいほど出会うのが「if文」ですよね。今日は、ベテランエンジニアがよく使う「Falsy(フォルシー)」という概念を使って、あなたのコードをよりスマートにするコツを伝授します。

Falsyとは何か?

プログラミングの世界では、値を「真(True)」か「偽(False)」で判断することがあります。JavaScriptには、条件式の中で「実質的にFalseとして扱われる値」がいくつか存在します。これがFalsyです。

具体的には、以下の6つがFalsyです。
・false(そのもの)
・0(数値のゼロ)
・””(空の文字列)
・null(値がない状態)
・undefined(未定義)
・NaN(数値ではないことを示す値)

これら以外の値(例えば、空ではない文字列「”こんにちは”」や、数値の「1」など)は、すべて「Truthy(真)」とみなされます。

なぜFalsyを知ると便利なのか?

初心者のうちは、よくこのように書いてしまいがちです。
if (userName !== null && userName !== “” && userName !== undefined) { … }

これだと少し長いですよね。実は、Falsyの性質を使えば、もっとシンプルに書けるのです。
if (userName) { … }

もしuserNameが空文字やnullであれば、JavaScriptは自動的に「False」と判定して、ブロックの中を実行しません。このように「値が存在するかどうか」を確認する際、わざわざ厳密な比較演算子を使わなくても、Falsyの性質だけでスッキリ書ける場面が多いのです。

注意点:0と空文字の落とし穴

ただし、ここで一つだけ注意が必要です。もしあなたが「入力された数値が0である場合」も処理したいと考えているなら、単にif (value)と書くと、0はFalsyなので無視されてしまいます。

「0も有効な値として扱いたい」場合は注意が必要です。そんなときは、しっかりと比較演算子を使って、値がundefinedではないことを明示的にチェックしましょう。

まとめ

Falsyを使いこなすと、コードは驚くほど短く、読みやすくなります。
まずは、簡単な文字列のチェックなどで「if (text)」と書く練習から始めてみてください。これだけで、あなたのコードは一気に「プロっぽく」なるはずですよ!

タイトルとURLをコピーしました