@typeforce/is-number
v1.0.2
Published
Determine if a value is a number
Downloads
1,129
Readme
is-number
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.