search
LoginSignup
0

posted at

updated at

falseになる変数を波括弧で囲むとtrueとして判断されるので注意が必要

falseが詰まった変数を波括弧で囲んでしまい、なんでfalseなのにtrueとして判断されちゃうのかな〜と5分くらい詰まったのでメモ。

falseを波括弧で囲んだコードがあるとする。

サンプルコード
const thisIsFalse = false

if ({thisIsFalse}) {
    console.log("HOGE");
} else {
    console.log("HUGA");
}

console.log({thisIsFalse})

実行するとこんな感じに出力される。

HOGE
[object Object]

JavaScriptのif文は、Falsyである値以外は全てTruthyとして判断されるらしい。
今回の例ではFalsyとして判断される8つ全てに当てはまらなかったため、Truthyとして判断されたようだ。

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
What you can do with signing up
0