Skip to content
Navigation

useDataType

提供一些没有原生 API 实现的简化数据类型操作方法。

getCorrectType

获取正确的数据类型。

  • Supported Platforms:
Browser
Electron
App
Server
Scriptlet
  • Type Declarations:
ts
declare function getCorrectType(
  /**
   * 要查询的目标
   */
  target: any
): CorrectDataType

/**
 * 数据类型
 */
type CorrectDataType =
  | 'Boolean'
  | 'String'
  | 'Number'
  | 'BigInt'
  | 'Symbol'
  | 'Null'
  | 'Undefined'
  | 'Function'
  | 'Object'
  | 'Array'
  | 'Date'
  | 'Error'
  | 'Set'
  | 'Map'
  | 'WeakSet'
  | 'WeakMap'
  • Example:
ts
import { useDataType } from '@lunarxyz/core'

const { getCorrectType } = useDataType()
console.log(getCorrectType(''))  // String
console.log(getCorrectType(1))  // Number
console.log(getCorrectType({}))  // Object
console.log(getCorrectType([]))  // Array
console.log(getCorrectType(null))  // Null
console.log(getCorrectType(undefined)) // Undefined

isObject

判断目标是否对象。

  • Supported Platforms:
Browser
Electron
App
Server
Scriptlet
  • Type Declarations:
ts
declare function isObject(
  /**
   * 要查询的目标
   */
  target: any
): boolean
  • Example:
ts
import { useDataType } from '@lunarxyz/core'

const { isObject } = useDataType()
console.log(isObject({})) // true
console.log(isObject(null)) // false

hasKey

判断对象上是否存在指定的键。

  • Supported Platforms:
Browser
Electron
App
Server
Scriptlet
  • Type Declarations:
ts
declare function hasKey(
  /**
   * 要查询的对象
   */
  obj: {
    [key: string]: any
  },
  /**
   * 要查询的键名称
   */
  key: string
): boolean
  • Example:
ts
import { useDataType } from '@lunarxyz/core'

const { hasKey } = useDataType()
const obj = {
  foo: 'foo',
  bar: 'bar',
}
console.log(hasKey(obj, 'foo')) // true
console.log(hasKey(obj, 'foooo')) // false

Released under the MIT License.