is-nan-x
Version:
ES6-compliant shim for Number.isNaN - the global isNaN returns false positives.
90 lines (76 loc) • 2.76 kB
Markdown
<a
href="https://travis-ci.org/Xotic750/is-nan-x"
title="Travis status">
<img
src="https://travis-ci.org/Xotic750/is-nan-x.svg?branch=master"
alt="Travis status" height="18">
</a>
<a
href="https://david-dm.org/Xotic750/is-nan-x"
title="Dependency status">
<img src="https://david-dm.org/Xotic750/is-nan-x/status.svg"
alt="Dependency status" height="18"/>
</a>
<a
href="https://david-dm.org/Xotic750/is-nan-x?type=dev"
title="devDependency status">
<img src="https://david-dm.org/Xotic750/is-nan-x/dev-status.svg"
alt="devDependency status" height="18"/>
</a>
<a
href="https://badge.fury.io/js/is-nan-x"
title="npm version">
<img src="https://badge.fury.io/js/is-nan-x.svg"
alt="npm version" height="18">
</a>
<a
href="https://www.jsdelivr.com/package/npm/is-nan-x"
title="jsDelivr hits">
<img src="https://data.jsdelivr.com/v1/package/npm/is-nan-x/badge?style=rounded"
alt="jsDelivr hits" height="18">
</a>
<a
href="https://bettercodehub.com/results/Xotic750/is-nan-x"
title="bettercodehub score">
<img src="https://bettercodehub.com/edge/badge/Xotic750/is-nan-x?branch=master"
alt="bettercodehub score" height="18">
</a>
<a
href="https://coveralls.io/github/Xotic750/is-nan-x?branch=master"
title="Coverage Status">
<img src="https://coveralls.io/repos/github/Xotic750/is-nan-x/badge.svg?branch=master"
alt="Coverage Status" height="18">
</a>
<a name="module_is-nan-x"></a>
## is-nan-x
ES6-compliant shim for Number.isNaN - the global isNaN returns false positives.
<a name="exp_module_is-nan-x--module.exports"></a>
### `module.exports(value)` ⇒ <code>boolean</code> ⏏
This method determines whether the passed value is NaN and its type is
`Number`. It is a more robust version of the original, global isNaN().
**Kind**: Exported function
**Returns**: <code>boolean</code> - `true` if the given value is NaN and its type is Number;
otherwise, `false`.
| Param | Type | Description |
| ----- | --------------- | ------------------------------- |
| value | <code>\*</code> | The value to be tested for NaN. |
**Example**
```js
import numberIsNaN from 'is-nan-x';
console.log(numberIsNaN(NaN)); // true
console.log(numberIsNaN(Number.NaN)); // true
console.log(numberIsNaN(0 / 0)); // true
// e.g. these would have been true with global isNaN()
console.log(numberIsNaN('NaN')); // false
console.log(numberIsNaN(undefined)); // false
console.log(numberIsNaN({}); // false
console.log(numberIsNaN('blabla')); // false
// These all return false
console.log(numberIsNaN(true));
console.log(numberIsNaN(null));
console.log(numberIsNaN(37));
console.log(numberIsNaN('37'));
console.log(numberIsNaN('37.37'));
console.log(numberIsNaN(''));
console.log(numberIsNaN(' '));
```