torf
v1.0.7
Published
Small utility for checking if variables are defined and non empty
Downloads
29
Readme
torf
Small library for cheking if a variable is ok.
npm install torf --save
For readability I suggest to save the module in a variable called is
.
##is.ok();
This method simply checks if a variable is ok in general terms. Is ok means that a variable is defined and in case it is an object (or array) that it is not empty or the content is not undifined or null.
var is = require('torf');
is.ok([]); // false
is.ok({}); // false
is.ok([{}]); // false
is.ok(NaN); // false
is.ok(null); // false
is.ok(Infinity); // false
is.ok(undefined); // false
is.ok([NaN]); // false
is.ok([null]); // false
is.ok([Infinity]); // false
is.ok([undefined]); // false
You can pass functions as well. In that case the function will be invoked and the test will be performed on what the function returns.
is.ok(function(){}); // false
is.ok(function(){return NaN;}); // false
is.ok(function(){return false;}); // false
is.ok(function(){return null;}); // false
is.ok(function(){return Infinity;}); // false
is.ok(function(){return undefined;}); // false
is.ok(function(){return [undefined];}); // false
This is done recursively, which means it is possible to nest functions.
is.ok(function(){ return function(){ return false;}}); // false
is.ok(function(){ return function(){ return true;}}); // true
##is.type();
This method simply checks the first argument class or primitive value against the second argument.
var is = require('torf');
is.type('string', 'string'); // true
is.type(['fooo'], 'array'); // true
is.type({a:'hi'}, 'string'); // false
It is possible to pass an array of classes as second argument, in which case it will return true if one of the classes is matched.
var is = require('torf');
is.type('string', ['string', 'number', 'object']); // true
is.type(['fooo'], ['null', 'array', 'date']); // true
is.type({a:'hi'}, ['string', 'number', 'array']); // false
The comparison is done by calling the Object.prototype.toString()
to detect object class so it's possible
to test alse undefined === null
.
is.type(undefined, 'null'); // false
is.type(null, 'null'); // true
##is.email();
Internally it uses a regular expression /\S+@\S+\.\S+/
which is pretty generous. If you need more restriction I suggest to look at the second example.
var is = require('torf');
is.email('[email protected]'); // true;
is.email('[email protected]'); // true;
is.email('foo.zoo@bar'); // false;
is.email(null); // false;
is.email(undefined); // false;
Optionally you can pass a regular expression to check against as second parameter.
var is = require('torf');
is.email('[email protected]', new RegExp(/[\s\S]/)); // true