trueとみなされる値とfalseとみなされる値

if 文や for 文の条件式では式が true なのか false なのかを評価されるところがあります。このような条件式で数値や文字列など論理値以外の値が記述された場合に true とみなされるのか false とみなされるのかはルールが決まっています。ここでは論理値が要求される場所で、どんな値が true とみなされるのか false とみなされるのかについて解説します。

(Last modified: )

falseとみなされる値

if 文や for 文の条件式など論理値の値が要求されるところで、次の値が記述された場合は false とみなされます。

false
0
-0
0n
"" (空文字)
null
undefined
NaN

数値の 0 や文字列の空文字、 null や undefined などは false とみなされます。

サンプルコード

次のサンプルをみてください。

if (0){
  console.log('true');
}else{
  console.log('false');
}

>> false

if 文の条件式に 0 を記述しました。 0 は false とみなされるので、 else のあとのブロックが実行されます。

trueとみなされる値

論理値の値が要求されるところで、 false とみなされる値以外の値はすべて true とみなされます。例えば次のような値が該当します。

true
43
'Red'
[3, 4]

0 以外の数値や空文字以外の文字列、他にオブジェクトはすべて true とみなされます。

サンプルコード

次のサンプルをみてください。

if ('Yes'){
  console.log('true');
}else{
  console.log('false');
}

>> true

if 文の条件式に 'Yes' を記述しました。空文字以外の文字列は true とみなされるので、 if のあとのブロックが実行されます。

-- --

論理値が要求される場所で、どんな値が true とみなされるのか false とみなされるのかについて解説しました。

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。