# @devtools-ds/object-inspector 中文文档

规范地址：https://npmcn.com/package/%40devtools-ds/object-inspector/

版本：1\.2\.1
npm 元数据更新时间：2022-12-27T21:51:25.314Z
中文译文更新时间：2026-11-12T04:30:29.492Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40devtools-ds/object-inspector
原文对照：https://npmcn.com/package/%40devtools-ds/object-inspector/?lang=original
项目主页：https://github.com/intuit/devtools-ds#readme
源码仓库：https://github.com/intuit/devtools-ds

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：145 kB，50 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：5 个
- peer 依赖：react \>= 16\.8\.6
- 首次发布：2021-01-25T04:16:10.727Z
- 最新版本发布：2022-12-27T21:51:25.208Z
- 近 30 天下载量：529161（2026-10-12 至 2026-11-10，npm 官方下载统计）
- 已发布版本数：26（近 12 个月 0 个）

## 中文简介

复制 Chrome 和 Firefox 对象检查器, 允许您在控制台中查看 JavaScript 对象 .

## 安装

```sh
npm install @devtools-ds/object-inspector
```

也可以使用：`pnpm add @devtools-ds/object-inspector`、`yarn add @devtools-ds/object-inspector`、`bun add @devtools-ds/object-inspector`

## README

# @ devtools-ds/ 对象检查器

复制 Chrome 和 Firefox 对象检查器, 允许您在控制台中查看 JavaScript 对象 .

## 安装

```sh
npm i @devtools-ds/object-inspector
# or with yarn
yarn add @devtools-ds/object-inspector
```

## 支持类型

JavaScript 有宽而有时复杂的 [一组可用的类型](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects)。这个组件试图很好地显示大多数类型,我们有下列样式:

```ts
export type SupportedTypes =
  | boolean
  | null
  | number
  | string
  | Error
  | symbol
  | undefined
  | Date
  | RegExp
  | object
  | Map<any, any>
  | WeakMap<any, any>
  | Set<any>
  | WeakSet<any>
  | Promise<any>
  | any[]
  | Function;
```

对于它不知道的类型,组件应该尝试找到要显示的名称或字符串.

## 使用量

然后使用代码中的组件 只需导入它!

```js
import { ObjectInspector } from "@devtools-ds/object-inspector";

const data = {
  string: "string",
  boolean: true,
  number: 100,
};

<ObjectInspector data={data} expandLevel={1} sortKeys={true} />;
```

## 回电

`onSelect`

此函数随选定的 AST 节点调用( 在解析 `data` 道具为 `@devtools-ds/object-parser`) (中文(简体) ). 通过所选节点,您可以向上/向下穿行树,并在目前所选节点上采取行动(如显示该属性的其他细节).

## 财务问题

### 为什么\[插入类型\]类型没有更好的支持?

有些类型像 `WeakSet`, (中文(简体) ), `WeakMap`等不能使用 JavaScript API 方便检查。 承诺是相似的,虽然有工作 `Promise.race` 迫使这个组件中的大多数东西是同步的。 他们之所以在浏览器中很好工作 是因为他们可以访问 JavaScript 引擎 API , 这让他们有更多的控制.

如果您看到一个缺失且易于支持的类型, 请随意打开一个问题或 PR 添加它 .

### 为什么\[插入属性\]属性并不总是匹配我的浏览器?

我有一个目标 来观察Chrome和Firefox的检查人员 以便最好地支持他们基于浏览器。 有时事情不能被简单地放在两者之间 并且妥协了 例如Chrome 混合双下划线语法 `__proto__` 双括号语法 `[[Entries]]`。Firefox 更符合 `<prototype>` 财务报告和审定财务报表 `<entries>` 语法 所以我决定坚持下去 在一致性方面,双方有一些妥协.

我愿意接受关于如何改进的建议.

### 为什么\[插入属性\]颜色略有不同?

大部分情况下,颜色应与浏览器的应用几乎相同.

有时浏览器之间会有复杂的颜色,其中一种可能要用三种颜色才能完成另一种颜色的工作. 这些基本是逐一评估的,同时考虑到增加的复杂性。 有时浏览器的颜色很轻 反差很大 为了无障碍,我有时会留下更大胆的颜色.

## 有用参考资料

-   [MDN 对象类型](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects)
-   [MDN 已打入阵列](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays)

## 贡献者

感谢这些伟大的人[emoji 密钥](https://allcontributors.org/docs/en/emoji-key):

<table><tbody><tr><td align="center"><a href="http://tylerkrupicka.com/" rel="nofollow noopener noreferrer"><img alt="" src="https://avatars.githubusercontent.com/u/5761061?v=4?s=100" width="100px;" loading="lazy" decoding="async" referrerpolicy="no-referrer"><br><sub><b>泰勒克鲁皮卡</b></sub></a><br><a href="https://github.com/design-systems/devtools-ds/commits?author=tylerkrupicka" title="Code" rel="nofollow noopener noreferrer">💻</a> <a href="https://github.com/design-systems/devtools-ds/commits?author=tylerkrupicka" title="Documentation" rel="nofollow noopener noreferrer">📖</a> <a href="https://npmcn.com/package/%40devtools-ds/object-inspector/#readme-design-tylerkrupicka" title="Design" rel="nofollow noopener noreferrer">🎨</a> <a href="https://npmcn.com/package/%40devtools-ds/object-inspector/#readme-infra-tylerkrupicka" title="Infrastructure (Hosting, Build-Tools, etc)" rel="nofollow noopener noreferrer">🚇</a> <a href="https://npmcn.com/package/%40devtools-ds/object-inspector/#readme-example-tylerkrupicka" title="Examples" rel="nofollow noopener noreferrer">💡</a> <a href="https://github.com/design-systems/devtools-ds/commits?author=tylerkrupicka" title="Tests" rel="nofollow noopener noreferrer">⚠️</a></td><td align="center"><a href="https://github.com/adierkens" rel="nofollow noopener noreferrer"><img alt="" src="https://avatars.githubusercontent.com/u/13004162?v=4?s=100" width="100px;" loading="lazy" decoding="async" referrerpolicy="no-referrer"><br><sub><b>亚当·迪尔肯斯</b></sub></a><br><a href="https://github.com/design-systems/devtools-ds/commits?author=adierkens" title="Code" rel="nofollow noopener noreferrer">💻</a> <a href="https://github.com/design-systems/devtools-ds/commits?author=adierkens" title="Documentation" rel="nofollow noopener noreferrer">📖</a> <a href="https://npmcn.com/package/%40devtools-ds/object-inspector/#readme-example-adierkens" title="Examples" rel="nofollow noopener noreferrer">💡</a> <a href="https://github.com/design-systems/devtools-ds/commits?author=adierkens" title="Tests" rel="nofollow noopener noreferrer">⚠️</a></td></tr></tbody></table>

本项目遵循 [全部贡献者](https://github.com/all-contributors/all-contributors) 规格。 任何捐款都欢迎!

## 常见问题

### @devtools-ds/object-inspector 是什么？

复制 Chrome 和 Firefox 对象检查器, 允许您在控制台中查看 JavaScript 对象 \.

### 如何安装 @devtools-ds/object-inspector？

在项目目录运行 npm install @devtools-ds/object-inspector，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：react（\>= 16\.8\.6）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @devtools-ds/object-inspector 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @devtools-ds/object-inspector 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @devtools-ds/object-inspector 可以商用吗？

@devtools-ds/object-inspector 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @devtools-ds/object-inspector 的下载量有多少？

根据 npm 官方下载统计，@devtools-ds/object-inspector 在 2026/10/12 – 2026/11/10 这 30 天内被下载 529,161 次，日均约 17,639 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @devtools-ds/object-inspector 还在维护吗？

最新版本 1\.2\.1 发布于 2022/12/28（3 年前）；至今共发布 26 个版本，其中过去 12 个月发布了 0 个；首次发布于 2021/01/25。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

