JS: Boolean Constructor

By Xah Lee. Date: . Last updated: .
Boolean(arg)

Force arg to Primitive Value true or false, return it.

console.assert(Boolean(0) === false);
console.assert(Boolean(0.0) === false);
console.assert(Boolean(0.) === false);
console.assert(Boolean(.0) === false);

console.assert(Boolean("") === false);

console.assert(Boolean(null) === false);
console.assert(Boolean(undefined) === false);
console.assert(Boolean(NaN) === false);

// anything else is true
console.assert(Boolean(1));
console.assert(Boolean(-1));
console.assert(Boolean(Infinity));
console.assert(Boolean({}));
console.assert(Boolean([]));
console.assert(Boolean(function () {}));
// Boolean called as a function, returns true/false primitive value
console.assert((typeof Boolean(3)) === "boolean");
new Boolean(arg)

Convert arg to a value that's a boolean object type, return it.

const xx = new Boolean(2);
console.assert((typeof xx) === "object");
console.assert(xx.valueOf());