🐙

JavaScript で任意の値を真理値(true/false)に変換する

2024/03/08に公開

JavaScript で任意の値を真理値に変換したい場合 !!obj のように !! を使うことが多いです。

console.log(!!"hoge");   // => true
console.log(!!"");       // => false

!!obj の変わりに Boolean() 関数が利用できる

他にも Boolean() 関数が存在しており、こちらも同様に真理値への変換を行うことができます。

console.log(Boolean("hoge"));   // => true
console.log(Boolean(""));       // => false

Boolean オブジェクトも存在している

また Boolean オブジェクトも存在しておりこちらは new Boolean で生成する事ができます。

const b1 = new Boolean("hoge")
console.log(b1);
// => [Boolean: true]

const b2 = new Boolean("")
console.log(b2);
// => [Boolean: false]

// 両方とも true を返す
console.log(Boolean(b1));   // => true
console.log(Boolean(b2));   // => true

こちらは真理値ではなくて Boolean オブジェクトが返ってくるので注意してください。

参照

GitHubで編集を提案

Discussion