is-type-of
Version:
complete type checking for node
138 lines • 6.17 kB
JavaScript
;
// Javascript Primitive
// https://developer.mozilla.org/en-US/docs/Glossary/Primitive
Object.defineProperty(exports, "__esModule", { value: true });
exports.isString = isString;
exports.isNumber = isNumber;
exports.isBoolean = isBoolean;
exports.isBigInt = isBigInt;
exports.isSymbol = isSymbol;
exports.isUndefined = isUndefined;
exports.isNull = isNull;
exports.isNullable = isNullable;
exports.isPrimitive = isPrimitive;
exports.isInteger = isInteger;
exports.isInteger32 = isInteger32;
exports.isLong = isLong;
exports.isSafeInteger = isSafeInteger;
exports.isDouble = isDouble;
exports.isNaN = isNaN;
exports.isFinite = isFinite;
const MAX_INT_31 = Math.pow(2, 31);
/**
* returns true if val is string, not `String` object
*/
function isString(val) {
return typeof val === 'string';
}
/**
* returns true if val is number, not `Number` object
*/
function isNumber(val) {
return typeof val === 'number';
}
/**
* returns true if val is boolean, not `Boolean` object
*/
function isBoolean(val) {
return typeof val === 'boolean';
}
/**
* returns true if val is bigint
*/
function isBigInt(val) {
return typeof val === 'bigint';
}
/**
* returns true if val is symbol
*/
function isSymbol(val) {
return typeof val === 'symbol';
}
/**
* returns true if val is undefined
*/
function isUndefined(val) {
return typeof val === 'undefined';
}
/**
* returns true if val is null
*/
function isNull(val) {
return val === null;
}
/**
* returns true if val is null or undefined
*/
function isNullable(val) {
return val == null;
}
/**
* returns true if val is primitive
*/
function isPrimitive(val) {
return val === null ||
typeof val === 'boolean' ||
typeof val === 'number' ||
typeof val === 'string' ||
typeof val === 'symbol' ||
typeof val === 'bigint' ||
typeof val === 'undefined';
}
// Number Extension
/**
* returns true if val is integer
*/
function isInteger(val) {
if (isNullable(val))
return false;
return Number.isInteger(val);
}
/**
* returns true if val is integer, and between -2 ** 31 and 2 ** 31 - 1
*/
function isInteger32(val) {
if (!isInteger(val))
return false;
return val >= -MAX_INT_31 && val <= MAX_INT_31 - 1;
}
/**
* returns true if val is integer, and < -2 ** 31, and > 2 ** 31 - 1
*/
function isLong(val) {
if (!isInteger(val))
return false;
return val < -MAX_INT_31 || val > MAX_INT_31 - 1;
}
/**
* returns true if val is integer, and between -(2 ** 53 - 1) and 2 ** 53 - 1
* @see {Number.isSafeInteger}
*/
function isSafeInteger(val) {
return Number.isSafeInteger(val);
}
/**
* returns true if val is Double
*/
function isDouble(val) {
if (isNullable(val))
return false;
return isNumber(val)
&& !isNaN(val)
&& val % 1 !== 0;
}
/**
* returns true if val is NaN
* @see {Number.isNaN}
*/
function isNaN(val) {
return Number.isNaN(val);
}
/**
* returns true if val is finite
* @see {Number.isFinite}
*/
function isFinite(val) {
return Number.isFinite(val);
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpbWl0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3R5cGVzL3ByaW1pdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsdUJBQXVCO0FBQ3ZCLDhEQUE4RDs7QUFVOUQsNEJBRUM7QUFLRCw0QkFFQztBQUtELDhCQUVDO0FBS0QsNEJBRUM7QUFLRCw0QkFFQztBQUtELGtDQUVDO0FBS0Qsd0JBRUM7QUFLRCxnQ0FFQztBQUtELGtDQVFDO0FBT0QsOEJBR0M7QUFLRCxrQ0FHQztBQUtELHdCQUdDO0FBTUQsc0NBRUM7QUFLRCw0QkFLQztBQU1ELHNCQUVDO0FBTUQsNEJBRUM7QUFqSUQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFFbkM7O0dBRUc7QUFDSCxTQUFnQixRQUFRLENBQUMsR0FBYTtJQUNwQyxPQUFPLE9BQU8sR0FBRyxLQUFLLFFBQVEsQ0FBQztBQUNqQyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixRQUFRLENBQUMsR0FBYTtJQUNwQyxPQUFPLE9BQU8sR0FBRyxLQUFLLFFBQVEsQ0FBQztBQUNqQyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixTQUFTLENBQUMsR0FBYTtJQUNyQyxPQUFPLE9BQU8sR0FBRyxLQUFLLFNBQVMsQ0FBQztBQUNsQyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixRQUFRLENBQUMsR0FBYTtJQUNwQyxPQUFPLE9BQU8sR0FBRyxLQUFLLFFBQVEsQ0FBQztBQUNqQyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixRQUFRLENBQUMsR0FBYTtJQUNwQyxPQUFPLE9BQU8sR0FBRyxLQUFLLFFBQVEsQ0FBQztBQUNqQyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixXQUFXLENBQUMsR0FBYTtJQUN2QyxPQUFPLE9BQU8sR0FBRyxLQUFLLFdBQVcsQ0FBQztBQUNwQyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixNQUFNLENBQUMsR0FBYTtJQUNsQyxPQUFPLEdBQUcsS0FBSyxJQUFJLENBQUM7QUFDdEIsQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsVUFBVSxDQUFDLEdBQWE7SUFDdEMsT0FBTyxHQUFHLElBQUksSUFBSSxDQUFDO0FBQ3JCLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLFdBQVcsQ0FBQyxHQUFhO0lBQ3ZDLE9BQU8sR0FBRyxLQUFLLElBQUk7UUFDakIsT0FBTyxHQUFHLEtBQUssU0FBUztRQUN4QixPQUFPLEdBQUcsS0FBSyxRQUFRO1FBQ3ZCLE9BQU8sR0FBRyxLQUFLLFFBQVE7UUFDdkIsT0FBTyxHQUFHLEtBQUssUUFBUTtRQUN2QixPQUFPLEdBQUcsS0FBSyxRQUFRO1FBQ3ZCLE9BQU8sR0FBRyxLQUFLLFdBQVcsQ0FBQztBQUMvQixDQUFDO0FBRUQsbUJBQW1CO0FBRW5COztHQUVHO0FBQ0gsU0FBZ0IsU0FBUyxDQUFDLEdBQWE7SUFDckMsSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFDbEMsT0FBTyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQy9CLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLFdBQVcsQ0FBQyxHQUFhO0lBQ3ZDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDO1FBQUUsT0FBTyxLQUFLLENBQUM7SUFDbEMsT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLElBQUksR0FBRyxJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUM7QUFDckQsQ0FBQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsTUFBTSxDQUFDLEdBQWE7SUFDbEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUM7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUNsQyxPQUFPLEdBQUcsR0FBRyxDQUFDLFVBQVUsSUFBSSxHQUFHLEdBQUcsVUFBVSxHQUFHLENBQUMsQ0FBQztBQUNuRCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsU0FBZ0IsYUFBYSxDQUFDLEdBQWE7SUFDekMsT0FBTyxNQUFNLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ25DLENBQUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLFFBQVEsQ0FBQyxHQUFhO0lBQ3BDLElBQUksVUFBVSxDQUFDLEdBQUcsQ0FBQztRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQ2xDLE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQztXQUNmLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQztXQUNYLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3JCLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxTQUFnQixLQUFLLENBQUMsR0FBYTtJQUNqQyxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDM0IsQ0FBQztBQUVEOzs7R0FHRztBQUNILFNBQWdCLFFBQVEsQ0FBQyxHQUFhO0lBQ3BDLE9BQU8sTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUM5QixDQUFDIn0=