UNPKG

1.91 kBMarkdownView Raw
1# is-number [![NPM version](https://badge.fury.io/js/is-number.svg)](http://badge.fury.io/js/is-number)
2
3
4> Is the value a number? Has extensive tests.
5
6## Install
7#### Install with [npm](npmjs.org):
8
9```bash
10npm i is-number --save-dev
11```
12
13## Run tests
14
15```bash
16npm test
17```
18
19## Usage
20
21```js
22var isNumber = require('is-number');
23```
24
25
26### true
27
28```js
29isNumber(5e3);
30
31isNumber(0xff);
32
33isNumber(-1.1);
34isNumber(0);
35isNumber(1);
36isNumber(1.1);
37isNumber(10);
38isNumber(10.10);
39isNumber(100);
40
41isNumber('-1.1');
42isNumber('0');
43isNumber('012');
44isNumber('0xff');
45isNumber('1');
46isNumber('1.1');
47isNumber('10');
48isNumber('10.10');
49isNumber('100');
50isNumber('5e3');
51
52isNumber(parseInt('012'));
53isNumber(parseFloat('012'));
54
55isNumber(Infinity);
56isNumber('Infinity');
57```
58
59If you want `Infinity` to be `false`, just do:
60
61```js
62var isNumber = require('is-number');
63
64function isNum(val) {
65 return isNumber(val) && isFinite(val);
66}
67```
68
69### false
70
71```js
72isNumber('3abc');
73isNumber('abc');
74isNumber('abc3');
75isNumber('null');
76isNumber('undefined');
77isNumber([1, 2, 3]);
78isNumber(function () {});
79isNumber(new Buffer('abc'));
80isNumber(null);
81isNumber(undefined);
82isNumber({abc: 'abc'});
83isNumber({});
84isNumber([]);
85```
86
87## Notes
88
89Instead of using `isFinite()`, you can also achieve similar results by using something like `((+n+1) / (+n+1) === 1))`, but this alone allows values like `null` to pass as numbers (in JavaScript, the leading `+` coerces the value to a number, [see this gist](https://gist.github.com/jonschlinkert/e30c70c713da325d0e81) for some oddities).
90
91
92## Author
93
94**Jon Schlinkert**
95
96+ [github/jonschlinkert](https://github.com/jonschlinkert)
97+ [twitter/jonschlinkert](http://twitter.com/jonschlinkert)
98
99## License
100Copyright (c) 2014 Jon Schlinkert, contributors.
101Released under the MIT license
102
103***
104
105_This file was generated by [verb-cli](https://github.com/assemble/verb-cli) on September 21, 2014._
\No newline at end of file