数字
// 数字类型判断
typeof 123 === 'number' // true
// 整型判断
function isInteger(data) {
return typeof data === 'number' && data % 1 === 0
}
/**
* 引用:[Number.isInteger]
* https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Number/isInteger
*/
function isInteger(data) {
return typeof value === "number" &&
isFinite(value) &&
Math.floor(value) === value
}
字符串
// 字符串类型判断
typeof '123' === 'string' // true
// 空字符串判断
function emptyString(data) {
reurn data === ''
}
// 非空字符串判断
function nonEmptyString(data) {
typeof data === 'string' && data !== ''
}
布尔
// 布尔类型判断
typeof false === 'boolean' // true
function isBoolean(data) {
return data === false '' data === true
}
对象
// 对象类型判断
function isObject(data) {
return data !== null && typeof data === 'object'
}
function isObject(data) {
return Object.prototype.toString.call(data) === '[object Object]'
}
// 空对象判断
function emptyObject(data) {
return isObject(data) && Object.keys(data).length === 0
}
// 非空对象判断
function nonEmptyObject(data) {
return isObject(data) && Object.keys(data).length > 0
}
typeof null === 'object' // true
数组
// 数组类型判断
Array.isArray([]) // true
// 空数组判断
function emptyArray(data) {
return Array.isArray(data) && data.length === 0
}
// 非空数组判断
function nonEmptyArray() {
return Array.isArray(data) && data.length > 0
}