Package Exports
- empty-value
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (empty-value) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
empty-value
📦 Check if a given value is empty in JS extending his "truthy" and "falsy" nature
Status
Installation
Using npm
npm install --save empty-valueThe following values are considered to be empty:
- NaN
- 0 (0 as an integer)
- 0.0 (0 as a float)
- "0" (0 as a string)
- null
- false
- undefined
- "" (an empty string)
- " " (an string with only spaces)
- array( ) / [ ] (an empty array)
- { } (an empty object / no direct keys)
Usage
var empty = require('empty-value');
empty(true) //false
empty(12345) //false
empty(-12345) //false
empty('Lorem Ipsum is simply dummy text') //false
empty([1, 2, 3]) //false
empty({ foo: 'bar' }) //false
empty('{ "id" : 1 }') //false
empty(function () { }) //false
empty(NaN) //true
empty(0) //true
empty(0.0) //true
empty(null) //true
empty(false) //true
empty(undefined) //true
empty('0') //true
empty(''); //true
empty(' '); //true
empty([]) //true
empty({ }) //true
var proto = { foo: 'bar' };
var obj = Object.create(proto);
empty(obj) //true Note: foo is not a directly property of objUsing hooks
If empty can't guess the correct answer (IE: value is a function) before return FALSE you could use your own hook. See example bellow:
var myEmptyHook = function (value) {//i don't like functions
return typeof value === 'function' ? true : false;
}
var func = function () {
return 'bar';
}
empty(func, myEmptyHook); //trueLicense
MIT