本記事では、JavaScriptのfalsyとtruthyについて解説しています。
JavaScriptの学習におすすめ書籍
1冊ですべて身につくJavaScript入門講座
メリット
- 誰でも分かるように嚙み砕いて説明してくれる
- アニメーションの知識が深く学べる
- 1つのWebサイトを作りながら学べる
ポチップ
先輩くん
Amazon Kindle Unlimitedに登録すると、月額980円で読み放題だからオススメだよ!
初回30日間は無料だから、まだ登録したことのない人はぜひ試してみてね!
全プログラマー必見!
変数名/関数名にもう悩まない!
変数名/関数名にもう悩まない!
リーダブルコード
メリット
- 美しいコードが書けるが自然と書けるようになる
- 他の開発者が理解しやすいコードになる
著:Dustin Boswell, 著:Trevor Foucher, 解説:須藤 功平, 翻訳:角 征典
¥2,640 (2023/07/23 02:48時点 | Amazon調べ)
目次
falsyとtruthyとは?
JavaScriptでは、全ての値をfalsyとtruthyに分けることができます。
例えば、if文で文字列を使った変数に対して条件分岐を行ってみましょう。
let str = "Hello";
if (str) {
console.log("処理が実行されました!");
}
すると、条件に満たされたことで中の処理が実行されます。何故これが条件に満たされるのでしょうか?本来if文とはtrueの時にしか中の処理は実行されないはずですよね。
その答えは値がfalsyとtruthyに区別にされており、暗黙の型変換でtrueまたはfalseに変換されています。
そのため、if文にtrueとfalse以外の値を入れても処理が実行されます。
Boolean | |
---|---|
falsy | false |
truthy | true |
falsyとtruthyになる値
falsyとtruthyに当てはまる値は以下のとおりです。
値 | |
---|---|
falsy | false / 0 / -0 / 0n / “” / null / undefined / NaN |
truthy | falsy以外の値 |
/* 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"));