isRegExp
isRegExp :: a β†’ Boolean
Evaluates whether the given value is of type RegExp​
import isRegExp from 'deep-waters/isRegExp';
​
isRegExp(/^foo$/); // β†’ true
isRegExp(new RegExp(/^foo$/)); // β†’ true
​
isRegExp("/^foo$/"]); // β†’ false
isRegExp(null); // β†’ false
isRegExp("foo"); // β†’ false
isRegExp, like any other type validator, is mostly used in composed validators:
import isString from 'deep-waters/isString';
import matchesPattern from 'deep-waters/matchesPattern';
​
const isEmail = compose(
isString,
matchesPattern(/^\w+([.-]?\w+)*@\w+([.-]?\w+)*(\.\w{2,3})+$/),
);
isRegExp is built on top of ofClass validator and rely on Object.prototype.toString to check on the received value type in order to avoid typeof weird behaviours and encouraging a runtime strict type validation.
Copy link