UNPKG

numeric-validation

Version:

This package validates number based upon provided rules

40 lines (30 loc) 917 B
function validateNumber (number, rules) { let flag = false; const { greaterThan, equalTo, lesserThan, isInteger, isFloat, isNumber } = rules; if(typeof number !== number) { number = +number; } if(isNaN(number)) { return false; } if(!isNaN(number) && typeof isNumber === "boolean") { return true; } if (typeof greaterThan === "number") { flag = !!(number > greaterThan); } if (typeof equalTo === "number") { flag = !!(number === equalTo); } if (typeof lesserThan === "number") { flag = !!(number < lesserThan); } if(typeof isInteger === "boolean") { flag = !!(Number.isInteger(number)); } if(typeof isFloat === "boolean") { flag = !!(Number.isInteger(number)) ? false : true; } return flag; } module.exports = validateNumber;