getType
获取变量的类型值(Number 对 NaN 做处理)
参数
参数名 | 参数类型 | 参数说明 |
---|---|---|
value | unknown | 任意值 |
源代码&使用
ts
import { getType } from "@manzhixing/utilsxy";
getType("manzhixing") // String
getType(221) // Number
getType(NaN) // NaN
getType(Symbol()) // Symbol
getType(new Date()) // Date
ts
/*
* @Author: Chengbotao
* @Contact: https://github.com/chengbotao
*/
export function getType(value: unknown): string {
if (typeof value === 'number') {
return isNaN(value) ? 'NaN' : 'Number';
}
return Object.prototype.toString.call(value).replace(/^\[object (.+)\]$/, '$1');
}
提示
getType
与 typeOf
返回值不同
- typeOf 返回类型值全小写,getType 返回类型值首字母大写
- getType 对
Number
做了处理可以返回NaN
- typeOf 是一个手写 typeof 的扩展, getType 更有语义化些