JavaScriptで文字列falseをBoolean型に変更しようとして沼に落ちた

過去に自分が書いたStringしか受け付けないコンポーネントにBoolean型をStringで渡し、Boolean型に変換しようとしたけどうまくいかなかったので、うまくいった方法をまとめておく。

目次

文字列をBoolean型に変換するとtrueになる

console.log(Boolean('false'))
// true

特に何も考えず上記コードを書きデバック時にはまった。

他の型は上記のような書き方でうまく変換できるので、原因解明に時間がかかった。

Boolean()を調べてみると、

注意: 文字列への型強制や数値への型強制などの他の型の変換とは異なり、論理値への型強制はオブジェクトからプリミティブに変換しようとするわけではありません。

どうやらこのようなことらしい。

じゃあ、いったいどうすればいいのか。

文字列falseをBoolean型にする方法

console.log(JSON.parse(('false').toLowerCase()))

上記コードでうまく変換できた。

次に読むおすすめ記事

Javascriptで任意の値を持つn個の配列を作成する

複雑な文字列パターンをマッチさせる必要がある場合はIF分ではなく正規表現を使うべきだとChat GPTが言ってた

letの仕様に関する知識を問うJavaScriptの問題

JavaScriptで2つの配列を比較し、一致したものを取り出す方法コード

何が面倒って、アイキャッチ画像を設定するほど面倒なことはない

この記事に対するコメント

お気軽にコメントを下さい

メールアドレスが公開されることはありません。 が付いている欄は必須項目です