JS 判断值是否为 undefinedJS 和是否为数组
001 JS 判断值是否为 undefined
export function isDef(v) {
return v !== undefined && v !== null
}
002 JS 判断是否为数组
const toString = Object.prototype.toString
const ARRAY_TYPE = '[object Array]'
export function isArray(v) {
return toString.call(v) === ARRAY_TYPE
}
【拓展阅读】深入理解Object.prototype.toString.call()
https://www.jianshu.com/p/e4237ebb1cf0
export function noop(v) {
return v
}
const BOOLEAN = 'boolean'
export function isBoolean(v) {
return typeof v === BOOLEAN
}
const STRING = 'string'
export function isString(v) {
return typeof v === STRING
}
const FUNCTION = 'function'
export function isFunction(v) {
return typeof v === FUNCTION
}
export function runAsFn(v) {
return isFunction(v) ? v() : v
}
const NUMBER = 'number'
export function isNumber(v) {
return !isNaN(v) && typeof v === NUMBER
}
const OBJECT = 'object'
export function isObject(v) {
return typeof v === OBJECT && v !== NULL
}
export function isWindow(v) {
return v !== NULL && v === v.window
}