UNPKG

hd-types-check

Version:

hd-types-check 是一个校验实例类型的库,支持js的所有基本类型包括string、number、null、boolean、undefined,引用类型包括object、array、function、date。

83 lines (63 loc) 1.93 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; /** * 2021/11/8 * handan * 判断变量类型封装 */ /** * * @param {*} instance 任意一个实例 * @returns 返回当前实例的类型,包括string、number、null、boolean、undefined、object、array、function、date */ var check = function check(instance) { // 判断参数为空的情况 if (arguments.length === 0) { console.warn("Error,Types函数至少接受一个参数!"); return false; } // 参数类型为null if (instance === null) { return "null"; } var typeString = Object.prototype.toString.call(instance); //返回类似 "[object Array]" 的结构 typeString = typeString.toLowerCase().replace(/(\[|\])/g, ""); //返回类似 "object array" 的结构 typeString = typeString.slice(7); //返回类似 "array" 的结构 return typeString; }; var Types = function Types(instance) { // 判断参数为空的情况 if (arguments.length === 0) { console.warn("Error,Types函数至少接受一个参数!"); return false; } return check(instance); }; Types.isObject = function (param) { return check(param) === "object" ? true : false; }; Types.isArray = function (param) { return check(param) === "array" ? true : false; }; Types.isString = function (param) { return check(param) === "string" ? true : false; }; Types.isNumber = function (param) { return check(param) === "number" ? true : false; }; Types.isDate = function (param) { return check(param) === "date" ? true : false; }; Types.isNull = function (param) { return check(param) === "null" ? true : false; }; Types.isFunction = function (param) { return check(param) === "function" ? true : false; }; Types.isBoolean = function (param) { return check(param) === "boolean" ? true : false; }; var _default = Types; exports["default"] = _default;