之前我们习惯性的用typeof方法去判断数据类型,但慢慢的发现,typeof这个方法能力有限,基础的数据类型倒是还能判断,但是复杂一点,或者是null之类的假类型,就判断不出来了。
比如以下这些判断:
const numValue = 42;
console.log(typeof(numValue)); // number
const strValue = 'hello';
console.log(typeof(strValue)); // string
const booleanValue = true;
console.log(typeof(booleanValue)); // boolean
const undefinedValue = undefined;
console.log(typeof(undefinedValue)); // undefined
const nullValue = null;
console.log(typeof(nullValue)); // object
const objValue = {};
console.log(typeof(objValue)); // object
const arrayValue = [];
console.log(typeof(arrayValue)); // object
const functionValue = function(){};
console.log(typeof(functionValue)); // function
const dateValue = new Date();
console.log(typeof(dateValue)); // object
const regExpValue = /regex/;
console.log(typeof(regExpValue)); // object
可以看出,其实用typeof来判断类型,经常有一种不靠谱的感觉。现在 js-tool-big-box中添加了新的工具方法,可以判断这些数据类型,而且使用便捷。
目录
1 项目中安装导入
2 方法使用
2.1 数据判断
2.2 判断效果展示
2.3 使用方法总结
1 项目中安装导入
执行npm命令进行安装
npm i js-tool-big-box
导入dataBox对象,判断数据的详细类型添加到了这个对象下面
import { dataBox } from 'js-tool-big-box';
2 方法使用
2.1 数据判断
const numValue = 42;
console.log('42的具体数据类型:', dataBox.getDataType(numValue));
const strValue = 'hello';
console.log('hello的具体数据类型:', dataBox.getDataType(strValue));
const booleanValue = true;
console.log('true的具体数据类型:', dataBox.getDataType(booleanValue));
const undefinedValue = undefined;
console.log('undefined的具体数据类型:', dataBox.getDataType(undefinedValue));
const nullValue = null;
console.log('null的具体数据类型:', dataBox.getDataType(nullValue));
const objValue = {};
console.log('{}的具体数据类型:', dataBox.getDataType(objValue));
const arrayValue = [];
console.log('[]的具体数据类型:', dataBox.getDataType(arrayValue));
const functionValue = function(){};
console.log('function的具体数据类型:', dataBox.getDataType(functionValue));
const dateValue = new Date();
console.log('date的具体数据类型:', dataBox.getDataType(dateValue));
const regExpValue = /regex/;
console.log('regex的具体数据类型:', dataBox.getDataType(regExpValue));
2.2 判断效果展示
2.3 使用方法总结
方法名 | 返回值 | 入参 |
getDataType | 返回具体数据类型,是个字符串值,[object 类型] | 第一个参数必填,表示需要被判断的数据 |