0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[ JavaScript入門 ] falsyな値とtruthyな値とはなんなのか?またどのような時に使用するのか。

Last updated at Posted at 2021-01-08

falsyな値とは:point_up:

 falsyな値というのはBooleanで真偽値に変換した場合にfalseになる値のこと。

どゆこと、、、?

まずは、Booleanってなに?
Booleanは真偽値に変換するもの:raised_hand:

例えば、

let a = 0;
console.log(Boolean(a));


結果としてコンソールにはfalseと表示される

どういう事かというと、今回の場合、0というのは、Booleanによって真偽値に変換した時falseと等価になることがわかる。

##falsyな値

falsyな値
false
null
0
undefined
0n
NaN

< 空文字列 "" も falsy ですね。

JavaScript の仕様には含まれませんが、ブラウザ環境だと歴史的な理由により document.all も falsy だったりします。
(オブジェクトであるにもかかわらず何かに変換しようとすると undefined としてふるまう) >

@nagtkk さんにご指摘頂きました。
有り難うございます!

これらがfalsyな値としてあげられる:raised_hand:

##truthyな値
truthyな値は、falsyな値以外と覚えておく

##どのような時活用するのか

プログラムを書いている際に、変数に値が入っているかどうか確認したい時がある:frowning2: (値がnull、undefined以外か確認する)
そんな時活用!!

let a = parseInt("");
console.log(Boolean(a));

if(a) {
    console.log('hello');
} 

このようにif文の中にいれることによってaの値がfalsyな値かどうか確認することができる。この段階ではaという値はfalsyな値であることから、if文の中の記述は実行されない。

let a = parseInt("");
console.log(Boolean(a));

if(!a) {
    console.log('hello');
} 

このようにすることで、逆にfalsyな値であった時実行する。そのようなことも可能。

しかし、今回、値がnull、undefined以外か確認するということをしたい為、他のfalsyな値である0のときだけを確認したい場合、違った記述が必要となる。:frowning2:

0
0
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?