# escodegen 中文文档

规范地址：https://npmcn.com/package/escodegen/

版本：2\.1\.0
npm 元数据更新时间：2023-06-29T20:18:37.472Z
中文译文更新时间：2026-11-05T16:23:24.648Z
软件包许可：BSD-2-Clause

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

原始 npm 页面：https://www.npmjs.com/package/escodegen
原文对照：https://npmcn.com/package/escodegen/?lang=original
项目主页：http://github.com/estools/escodegen
源码仓库：https://github.com/estools/escodegen

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

- 包体积（解压后）：109 kB，6 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- Node.js 要求：\>=6\.0
- 运行依赖：4 个
- 首次发布：2012-03-03T15:50:31.471Z
- 最新版本发布：2023-06-29T20:18:37.341Z
- 近 30 天下载量：214563369（2026-10-06 至 2026-11-04，npm 官方下载统计）
- 已发布版本数：61（近 12 个月 0 个）

## 中文简介

ECMAScript 代码生成器

## 安装

```sh
npm install escodegen
```

也可以使用：`pnpm add escodegen`、`yarn add escodegen`、`bun add escodegen`

## README

## 埃斯科德根

[![npm version](https://badge.fury.io/js/escodegen.svg)](http://badge.fury.io/js/escodegen) [![Build Status](https://secure.travis-ci.org/estools/escodegen.svg)](http://travis-ci.org/estools/escodegen) [![Dependency Status](https://david-dm.org/estools/escodegen.svg)](https://david-dm.org/estools/escodegen) [![devDependency Status](https://david-dm.org/estools/escodegen/dev-status.svg)](https://david-dm.org/estools/escodegen#info=devDependencies)

埃斯科德根([编码源](http://github.com/estools/escodegen)是一个 [ECMAS脚本](http://www.ecma-international.org/publications/standards/Ecma-262.htm) (也俗称 [Java 脚本](http://en.wikipedia.org/wiki/JavaScript)(中文(简体) ) 代码生成器从 [Mozilla的解析器 API](https://developer.mozilla.org/en/SpiderMonkey/Parser_API) AST (英语). 见 [在线生成器](https://estools.github.io/escodegen/demo/index.html) 为演示.

### 安装

Escodegen 可用于网页浏览器 :

```
<script src="escodegen.browser.js"></script>
```

escodegen.browser.js可见于GitHub上的有标记的修订.

或通过 npm 在一个 Node.js 应用程序中:

```
npm install escodegen
```

### 使用量

一个简单的例子:程序

```
escodegen.generate({
    type: 'BinaryExpression',
    operator: '+',
    left: { type: 'Literal', value: 40 },
    right: { type: 'Literal', value: 2 }
});
```

生成字符串 `'40 + 2'`。 。 。 .

见 [API 页面](https://github.com/estools/escodegen/wiki/API) 页:1 选项。 要运行测试,执行 `npm test` 在根目录中.

### 构建浏览器捆绑/ 已修改浏览器捆绑

开始执行 `npm install` 以安装所有依赖性. 在那之后,我们..,

```
npm run-script build
```

将生成 `escodegen.browser.js`,可以在浏览器环境中使用.

还有,

```
npm run-script build-min
```

将生成已修改的文件 `escodegen.browser.min.js`。 。 。 .

### 许可证

#### 埃斯科德根

版权(C)2012年 [铃木雄介](http://github.com/Constellation) (推特: [@ 星座图](http://twitter.com/Constellation)和其他贡献者.

源形式和二进制形式的再分配和使用,不论有无 修改,但必须符合下列条件:

-   源代码的再分配必须保留上述版权 通知、本条件清单和下列免责声明.
    
-   二进制形式的再分配必须复制上述版权 通知、本条件清单和 分发时提供的文件和/或其他材料.
    

这个软件是由警察的 持有和贡献"是" 和任何战争遗留爆炸物,包括,但不受限制 紧迫性和特别目的的保证 被隔离。 绝对不能为任何人 直接、间接、突发事件、特别、紧急、或后果 (包括,但不限制,实质性货物或服务的采购; 使用、数据或赞助;或业务中断) 关于任何负债的理论,无论在合同、合同或合同中 以任何方式出现于 这个软件,甚至如果 警告这种可能性的 如此灾难.

## 常见问题

### escodegen 是什么？

ECMAScript 代码生成器

### 如何安装 escodegen？

在项目目录运行 npm install escodegen，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 esgenerate、escodegen，可以用 npx esgenerate 直接运行。

### escodegen 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/escodegen 是否存在。

### escodegen 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### escodegen 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=6\.0。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### escodegen 可以商用吗？

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

### escodegen 的下载量有多少？

根据 npm 官方下载统计，escodegen 在 2026/10/06 – 2026/11/04 这 30 天内被下载 214,563,369 次，日均约 7,152,112 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### escodegen 还在维护吗？

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

