JavaScript

【JavaScript】falsyとtruthyについて

本記事では、JavaScriptのfalsyとtruthyについて解説しています。

ITエンジニア特化の転職サイト!
自社内開発求人に強い【クラウドリンク】

先輩くん
先輩くん
年収、休日数、労働環境等クラウドリンクが審査し、これらを通過した優良求人情報のみ紹介しているよ!
後輩ちゃん
後輩ちゃん
100%自社内開発の求人だから、SESのように職場環境が変わらないのがいいね!
簡単30秒で無料登録!

JavaScriptの学習におすすめ参考書
改訂新版JavaScript本格入門 ~モダンスタイルによる基礎から現場での応用まで

falsyとtruthyとは?

JavaScriptでは、全ての値をfalsyとtruthyに分けることができます。

例えば、if文で文字列を使った変数に対して条件分岐を行ってみましょう。

let str = "Hello";

if (str) {
  console.log("処理が実行されました!");
}

すると、条件に満たされたことで中の処理が実行されます。何故これが条件に満たされるのでしょうか?本来if文とはtrueの時にしか中の処理は実行されないはずですよね。

その答えは値がfalsytruthyに区別にされており、暗黙の型変換でtrueまたはfalseに変換されています。

そのため、if文にtrueとfalse以外の値を入れても処理が実行されます。

falsy,truthy / false,trueの関係性
Boolean
falsyfalse
truthytrue

falsyとtruthyになる値

falsyとtruthyに当てはまる値は以下のとおりです。

falsyとtruthyになる値
falsyfalse / 0 / -0 / 0n / “” / null / undefined / NaN
truthyfalsy以外の値
/* falsy */
console.log(Boolean(false));
console.log(Boolean(0));
console.log(Boolean(-0));
console.log(Boolean(0n));
console.log(Boolean(null));
console.log(Boolean(undefined));
console.log(Boolean(NaN));
console.log(Boolean(""));

/* truthy(一部) */
console.log(Boolean(true));
console.log(Boolean(1));
console.log(Boolean(1n));
console.log(Boolean("A"));

ブログランキング・にほんブログ村へ PVアクセスランキング にほんブログ村