modifier
v0.0.3
Published
JavaScript validator / modifier
Downloads
8
Readme
modifier
description
JavaScript validator / modifier Available in modern browsers and Node.js.
API at a glance
require
var Modifier = require('modifier'); // in Node.js
make it integer
var num = Modifier.integer("10.3");
console.assert(num === 10); // to integer
make it number with conditions
var num2 = Modifier.number.where({ min: 10 })("10.3");
console.assert(num2 === 10.3); // to number, minimum 10
match?
var match = Modifier.regex.where({ pattern: /[a-z]/ })("shinout");
console.assert(match === "shinout"); // matched
error?
try {
var int1 = Modifier.integer("xxx");
}
catch (e) {
// get reason
console.assert(e.reason === 'NaN');
console.assert(e.val === 'xxx');
}
quiet
var str1 = Modifier.string.where({ quiet: true, min : 4 })("ABC");
console.assert(str1 === undefined);
strict
try {
var str2 = Modifier.string.where({ strict: true })(1324);
}
catch (e) {
console.assert(e.reason === 'notString');
console.assert(e.val === 1324);
}
modifiers
wheres
error reasons
complex coditions
Modifier.some(fn1, fn2, ...)
Modifier.some(
Modifier.string,
Modifier.regex.where({pattern: /^get[A-Za-z0-9]+$/})
)('getConfig##')
{reason: "noneOf"} is thrown when none of the modifier match.
Modifier.every(fn1, fn2, ...)
Modifier.every(
Modifier.string,
Modifier.regex.where({pattern: /^get[A-Za-z0-9]+$/})
)('getConfig')
only Node.js
file
Modifier.file.where({normalize: true})("/home/shinout/node_modules/jsrel/jsrel.js")
- normalize can be used to normalize the path.
- notFile is the reason when it exists but not a file.
- noSuchFileOrDirectory is the reason when no such file or directory.
dir
Modifier.dir.where({normalize: true})("/home/shinout/node_modules/jsrel/")
- normalize can be used to normalize the path.
- notDirectory is the reason when it exists but not a directory.
- noSuchFileOrDirectory is the reason when no such file or directory.
path
Modifier.path.where({normalize: true})("/home/shinout/node_modules/jsrel/")
- normalize can be used to normalize the path.
- noSuchFileOrDirectory is the reason when no such file or directory.
shortcut
- quiet can be used like
var fn = Modifier.integer.where({min: 0}).quiet // the same as {quiet: true}
var a = fn(-3); // undefined, throwing no error
- strict can be used like
var fn = Modifier.integer.where({min: 0}).strict.quiet