default-valuerepo-url !NPMnpm-imgnpm-url !MIT Licensemit-imgmit-url !Build Statustravis-imgtravis-url !Build Statusappveyor-imgappveyor-url !Coverage Statuscoverage-imgcoverage-url
===============
Get a default value when a value is nullish or invalid type
This program is free software under MITmit-url License. See the file LICENSE in this distribution for more details.
Get a default value when a value is nullish or invalid type
Install
$ npm i default-val --save
Usage
- Load this mudule :
```js
const defaultValue = require('default-val');
```
- Return the default value when the value is undefined or null :
```js
defaultValue(undefined, true) // => true
defaultValue(null, 123) // => 123
```
- Return the default value when the value is NaN :
```js
defaultValue(NaN, 123) // => 123
defaultValue(Infinity, 123) // => Infinity
```
- Return the default value when the type of the value is invalid :
```js
defaultValue(987, true) // => true
defaultValue(987, 'ABC', 'string') // => 'ABC'
defaultValue(987, 'ABC', '[object String]') // => 'ABC'
defaultValue(987, 123, '[object String]') // => 123
defaultValue(987, new Date(0), '[object Date]') // => new Date(0)
```
- And return the value when it is valid :
```js
defaultValue(987, 0) // => 987
defaultValue(987, 123, 'number') // => 987
defaultValue(987, null, 'number') // => 987
defaultValue(987, 'ABC', '[object Number]') // => 987
```
API
defaultValue(value, defValue , type) => any
Returns the second argument when the first argument isnull
, undefined
or NaN
, or the type of the first argument is different from the type of the second argument.
When the third argument is specified, returns the second argument if the type of the first argument is different from the type represented by the third argument.
The third argument can be specified the result of typeof x
or Object.prototype.toString.call(x)
.- Arguments:
* **value** [any] : a value to be evaluated.
* **defValue** [any] : a default value which is returned if **value** is invalid.
* **type** [string] : a type for a valid value. (optional)
- Return any : value if value is valid, otherwise defValue.
License
Copyright (C) 2017 Takayuki SatoThis program is free software under MITmit-url License. See the file LICENSE in this distribution for more details.