Skip to content

类型判断

基础类型判断工具函数。


isNumber

判断值是否为数字类型。

ts
function isNumber(val: any): val is number

参数

参数说明类型
val待判断的值any

返回值

val is number — 是否为数字

示例

ts
import { isNumber } from 'ljf-utils'

isNumber(123)     // true
isNumber('123')   // false
isNumber(NaN)     // true(NaN 是 number 类型)
isNumber(null)    // false

isString

判断值是否为字符串类型。

ts
function isString(val: any): val is string

示例

ts
import { isString } from 'ljf-utils'

isString('hello')  // true
isString(123)      // false
isString('')       // true

isFunction

判断值是否为函数类型。

ts
function isFunction(val: any): val is Function

示例

ts
import { isFunction } from 'ljf-utils'

isFunction(() => {})        // true
isFunction(function() {})   // true
isFunction(async function() {}) // true
isFunction('function')      // false

hasOwn

判断对象是否包含指定的自有属性(不包括原型链)。

ts
function hasOwn(val: any, key: string): boolean

参数

参数说明类型
val目标对象any
key属性名string

示例

ts
import { hasOwn } from 'ljf-utils'

const obj = { name: 'test' }
hasOwn(obj, 'name')      // true
hasOwn(obj, 'toString')  // false(原型链上的属性)