🐙
JavaScript で任意の値を真理値(true/false)に変換する
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
オブジェクトが返ってくるので注意してください。
Discussion