Skip to content

isFunction

是否为函数

引入版本

0.40.0

Demo

ts
import { isFunction } from '@wyfex/iutils'

/**
 * ================== 正确情况 ==================
 */
console.log(isFunction(() => {}))
console.log(isFunction(function test() {}))
console.log(isFunction(function fn() {}))
console.log(isFunction(async () => {}))
console.log(isFunction(function* gen() {}))
console.log(isFunction(async function* asyncGen() {}))
console.log(isFunction(Array))
console.log(isFunction(Object))
console.log(isFunction(Math.floor))
console.log(isFunction(class Demo {}))

console.log('------------------ 分界线 ------------------')

/**
 * ================== 错误情况 ==================
 */
console.log(isFunction(null))
console.log(isFunction(undefined))
console.log(isFunction(123))
console.log(isFunction(0))
console.log(isFunction(''))
console.log(isFunction('test'))
console.log(isFunction(true))
console.log(isFunction(false))
console.log(isFunction(Symbol('test')))
console.log(isFunction(999n))

console.log(isFunction({}))
console.log(isFunction({ name: 'test' }))
console.log(isFunction([]))
console.log(isFunction([1, 2, 3]))
console.log(isFunction(new Date()))
console.log(isFunction(/\d+/))
console.log(isFunction(new Map()))
console.log(isFunction(new Set()))

class Demo {}
console.log(isFunction(new Demo()))

基于 MIT 许可发布