目录
判断基本类型
/**
* 判断变量的基本类型。
* @param {*} value 待判断的变量。
* @returns {string} 变量的类型名称。
*/
function getBasicType(value) {
const type = typeof value;
if (type === 'object') {
if (value === null) return 'null';
if (Array.isArray(value)) return 'array';
if (value instanceof Date) return 'date';
}
return type;
}
检查是否为数组
/**
* 检查变量是否为数组。
* @param {*} value 待判断的变量。
* @returns {boolean} 如果是数组返回true,否则返回false。
*/
function isArray(value) {
return Array.isArray(value);
}
检查是否为函数
/**
* 检查变量是否为函数。
* @param {*} value 待判断的变量。
* @returns {boolean} 如果是函数返回true,否则返回false。
*/
function isFunction(value) {
return typeof value === 'function';
}
检查是否为对象(非数组、非null)
/**
* 检查变量是否为纯粹的对象(非数组、非null)。
* @param {*} value 待判断的变量。
* @returns {boolean} 如果是纯粹的对象返回true,否则返回false。
*/
function isPlainObject(value) {
return typeof value === 'object' && value !== null && !Array.isArray(value) && !(value instanceof Date);
}
检查是否为字符串
/**
* 检查变量是否为字符串。
* @param {*} value 待判断的变量。
* @returns {boolean} 如果是字符串返回true,否则返回false。
*/
function isString(value) {
return typeof value === 'string';
}
检查是否为数字
/**
* 检查变量是否为数字。
* @param {*} value 待判断的变量。
* @returns {boolean} 如果是数字返回true,否则返回false。
*/
function isNumber(value) {
return typeof value === 'number' && !isNaN(value);
}
检查是否为布尔值
/**
* 检查变量是否为布尔值。
* @param {*} value 待判断的变量。
* @returns {boolean} 如果是布尔值返回true,否则返回false。
*/
function isBoolean(value) {
return typeof value === 'boolean';
}
检查是否为undefined
/**
* 检查变量是否为undefined。
* @param {*} value 待判断的变量。
* @returns {boolean} 如果是undefined返回true,否则返回false。
*/
function isUndefined(value) {
return typeof value === 'undefined';
}
检查是否为正则表达式
/**
* 检查变量是否为正则表达式。
* @param {*} value 待判断的变量。
* @returns {boolean} 如果是正则表达式返回true,否则返回false。
*/
function isRegExp(value) {
return value instanceof RegExp;
}
检查是否为Map
/**
* 检查变量是否为Map类型。
* @param {*} value 待判断的变量。
* @returns {boolean} 如果是Map类型返回true,否则返回false。
*/
function isMap(value) {
return value instanceof Map;
}
检查是否为空(null或undefined)
/**
* 检查变量是否为空(null或undefined)。
* @param {*} value 待判断的变量。
* @returns {boolean} 如果是null或undefined返回true,否则返回false。
*/
function isEmpty(value) {
return value == null;
}