UNPKG

typeco

Version:

A javascript library which allows to check javascript value types at runtime

1 lines 947 B
'use strict';const TYPES={array:'Array',object:'Object',string:'String',date:'Date',regExp:'RegExp',function:'Function',boolean:'Boolean',number:'Number',null:'Null',undefined:'Undefined'},getType=a=>Object.prototype.toString.call(a).slice(8,-1),isArray=a=>getType(a)===TYPES.array,isObject=a=>getType(a)===TYPES.object,isString=a=>getType(a)===TYPES.string,isDate=a=>getType(a)===TYPES.date,isRegExp=a=>getType(a)===TYPES.regExp,isFunction=a=>getType(a)===TYPES.function,isBoolean=a=>getType(a)===TYPES.boolean||isString(a)&&('true'===a||'false'===a),isNumber=a=>getType(a)===TYPES.number&&!Number.isNaN(a),isNull=a=>getType(a)===TYPES.null||getType(a)===TYPES.undefined,isEmpty=a=>isString(a)?''===a.trim():isArray(a)?0===a.length:isObject(a)?0===Object.keys(a).length:isNull(a),isEmptyOrZero=a=>isEmpty(a)||isNumber(a)&&0===a;module.exports={isArray,isObject,isString,isDate,isRegExp,isFunction,isBoolean,isNumber,isNull,isEmpty,isEmptyOrZero};