Easily ensure data types.
// Ensure variable `obj` is an object, the traditional way
obj = (typeof obj === 'object' && !(obj instanceof Array)) ? obj : {};
// Ensure variable obj is an object, using ens.obj
obj = ens.obj(obj);
ens
makes it easy to ensure JS data types. With JS, ensuring data types requires a lot of ugly code. It's easy to specify variable defaults though: obj = obj || {}
. The problem with this pattern is, when obj
is set to a value which evaluates to true, the default value {}
won't be bound to obj
. This is where ens
comes in: obj = ens.obj(obj)
. Which results in the binding of an object to obj
no mather what type of data obj
is.
ens
will use the is
npm module soon, and will support its supported datatypes.
npm install ens
var ens = require('ens');
ens.arr(); // []
ens.arr({}); // []
ens.arr([1, 2]); // [1, 2]
ens.boo(); // true
ens.boo({}); // true
ens.boo(false); // false
ens.fun(); // function () {}
ens.fun({}); // function () {}
ens.fun(function test() {}); // function test () {}
ens.num(); // 1
ens.num({}); // 1
ens.num(5); // 5
ens.obj(); // {}
ens.obj([]); // {}
ens.obj({a: 'b'}); // {a: 'b'}
ens.str(); // ''
ens.str({}); // ''
ens.str('test'); // 'test'