1.0.2 • Published 6 years ago

@typeforce/is-number v1.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
6 years ago

is-number

NPM NPM CDN LICENSE

Determine if a value is a number.

A value is a number if it is of primitive type number, or is an instance of reference type Number.

Usage

    npm install @typeforce/is-number --save   # Install package via NPM
    import { expect } from "chai";
    import isNumber from "@typeforce/is-number";

    expect(isNumber(new Number(42))).to.be.true;
    expect(isNumber(Number.POSITIVE_INFINITY)).to.be.true;
    expect(isNumber(Number.NaN)).to.be.true;
    expect(isNumber(42)).to.be.true;
    expect(isNumber(0)).to.be.true;
    expect(isNumber(-42)).to.be.true;

    expect(isNumber(undefined)).to.be.false;
    expect(isNumber(null)).to.be.false;
    expect(isNumber("42").to.be.false;

This package contains TypeScript type declarations. Furthermore, the package uses TypeScript type guards to allow type inference to influence IntelliSense.

    if (isNumber(x)) {
        // IntelliSense now knows `x` is a number.
        let y: number = x;
    }

Content Delivery Network (CDN)

This package can be imported via unpkg as demonstrated below.

    <script src="https://unpkg.com/@typeforce/is-number/dist/index.min.js"></script>
    <script type="application/javascript">
        var x = 5;
        if (isNumber(x)) {
            // `x` is a number!
        }
    </script>

Build & Test

When building the project, a folder named dist/ will be created if it does not already exist, where the compiled code will be outputted to. Type declaration files will also be generated and outputted to the dist/ folder.

A minified Javascript version of the entire project will be generated and outputted to dist/index.min.js.

    npm install    # Installs dependencies.
    npm run build  # Build the project.

This package uses Gulp for building, and Chai and Mocha for testing.

    npm test       # Run tests.

License

Refer to the LICENSE file for license information.