num-or-not 
Check for a valid Number value.
Numbers, and values that can be cast or evaluated to numbers will return true
.
All other values will return false
.
Installation
$ npm install --save num-or-not
Usage
const isNumber = require('num-or-not');
isNumber(5);
isNumber(-5);
isNumber('5');
isNumber('-5');
isNumber(5.0);
isNumber('5.0');
isNumber('5,0');
isNumber(0o144);
isNumber(0O144);
isNumber('0o144');
isNumber('0O144');
isNumber(0b0);
isNumber('0b0');
isNumber(0xFF);
isNumber('0xFF');
isNumber(6e3);
isNumber(12e-2);
isNumber('6e3');
isNumber('12e-2');
isNumber('12,456,789');
isNumber('45,678.123');
isNumber(+'');
isNumber(+[]);
isNumber(+[0]);
isNumber(+true);
isNumber(+new Date);
Known Limitations
-
These binary and octal formats are only supported in ES6 environments:
-
Binary: 0b0
-
Octal: 0o144
& 0O144
-
In order to support numbers with commas or decimals (currencies, Dewey Decimal System, etc), some unique values can pass as valid numbers (see Issue #1):
-
1,2,3.4.5
-
1,2,3,4.5
-
Open a pull request or issue if you think we need tighter control over these limitations.
Why?
Why do we need another open source number validator in Javascript? We don't, but I wanted one to help keep me accountable of the data type nuances in JS.
License
MIT @ Michael Wuergler