0.2.1 • Published 3 months ago

@stdlib/boolean-ctor v0.2.1

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
3 months ago

Boolean

NPM version Build Status Coverage Status

Boolean constructor.

Installation

npm install @stdlib/boolean-ctor

Usage

var Boolean = require( '@stdlib/boolean-ctor' );

Boolean( value )

Returns a Boolean object, which is an object wrapper for a primitive boolean value.

var b = new Boolean( null );
// returns <Boolean>

When invoked without new, the function converts an input value to a primitive boolean value.

var b = Boolean( null );
// returns false

Methods

Boolean.prototype.toString()

Returns a string representation of the boolean value.

var b = new Boolean( true );
var str = b.toString();
// returns 'true'
Boolean.prototype.valueOf()

Returns the primitive value of the boolean object.

var b = new Boolean( true );
var val = b.valueOf();
// returns true

b = new Boolean();
val = b.valueOf();
// returns false

Notes

  • When invoked without new,

    • if provided false, null, undefined, -0, 0, NaN, or an empty string, the function returns false.
    • if provided any other value, including an empty object, an empty array, the string 'false', or a Boolean object (including a Boolean object whose value is false), the function returns true.
  • When invoked with new, the value of the returned Boolean object adheres to the same conversion semantics as when the constructor is invoked without new.

Examples

var format = require( '@stdlib/string-format' );
var Bool = require( '@stdlib/boolean-ctor' );

var values = [
    '5',
    5,
    0,
    NaN,
    true,
    false,
    null,
    void 0,
    [],
    {}
];

var i;
for ( i = 0; i < values.length; i++ ) {
    console.log( format( '%s => %s', JSON.stringify( values[ i ] ), ( Bool( values[ i ] ) ) ? 'true' : 'false' ) );
}

Notice

This package is part of stdlib, a standard library for JavaScript and Node.js, with an emphasis on numerical and scientific computing. The library provides a collection of robust, high performance libraries for mathematics, statistics, streams, utilities, and more.

For more information on the project, filing bug reports and feature requests, and guidance on how to develop stdlib, see the main project repository.

Community

Chat


License

See LICENSE.

Copyright

Copyright © 2016-2024. The Stdlib Authors.