改进检测类型 节点, (中文(简体) ), 德诺,还有浏览器.
| 支持的浏览器 | |||||
|---|---|---|---|---|---|
| ✅ | ✅ | ✅ | ✅ | 第9、10、11条 | |
什么是类型检测?
类型检测(Type Detection)是一个模块,可以用来检测给定对象的类型. 它返回对象类型的字符串表示,或者使用 typeof 或者说 @@toStringTag。它还使一些对象名称正常化,以便浏览器之间保持一致.
为什么?
这个 typeof 运算符将只指定原始值; 其他都是 "object" (包括 null, 数组, regexps等). 许多开发者使用 Object.prototype.toString() - 这是一个精细的选项,并返回更多类型(不返回) [object Null],矩阵为 [object Array],正则表示为 [object RegExp] (见e/cn.4/sub.2/2000/l.31).
很遗憾, Object.prototype.toString 慢了点 慢了点 慢一点,我们的意思是慢于 typeof。通过buggy - 我们指的是一些值(比如承诺,全局对象,延展者,数据视图,一串HTML元素)都在不同浏览器中报告不同的东西.
type-detect 纠正所有缺点 Object.prototype.toString我们有额外的代码来加快JS和DOM对象的检查,对于一些值来说,速度高达20-30x. type-detect 并修正这些物体的任何成分.
安装
节点.js
type-detect 可在 无。要安装,请输入:
$ npm install type-detect
德诺
type-detect 可用下列一行导入:
import type from 'https://deno.land/x/[email protected]/index.ts'
浏览器
您也可以在浏览器内使用;通过 npm 安装并使用 type-detect.js 在下载中找到文件。 例如:
<script src="./node_modules/type-detect/type-detect.js"></script>
使用量
二. 主要出口 type-detect 函数可以替代 typeof。此功能的结果将比本地的更具体 typeof。 。 。 .
var type = require('type-detect');
或者,在浏览器使用的情况下