# run-parallel 中文文档

规范地址：https://npmcn.com/package/run-parallel/

版本：1\.2\.0
npm 元数据更新时间：2025-01-02T08:58:07.736Z
中文译文更新时间：2026-11-05T04:05:56.069Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：6.6 kB，4 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- 运行依赖：1 个
- 首次发布：2014-04-12T09:25:52.411Z
- 最新版本发布：2021-02-10T02:58:08.152Z
- 近 30 天下载量：507548922（2026-10-05 至 2026-11-03，npm 官方下载统计）
- 已发布版本数：17（近 12 个月 0 个）

## 中文简介

并行运行一个函数数组

## 安装

```sh
npm install run-parallel
```

也可以使用：`pnpm add run-parallel`、`yarn add run-parallel`、`bun add run-parallel`

## README

# 平行 [![travis](https://img.shields.io/travis/feross/run-parallel/master.svg)](https://travis-ci.org/feross/run-parallel) [![npm](https://img.shields.io/npm/v/run-parallel.svg)](https://npmjs.org/package/run-parallel) [![downloads](https://img.shields.io/npm/dm/run-parallel.svg)](https://npmjs.org/package/run-parallel) [![javascript style guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com/)

### 并行运行一个函数数组

![parallel](https://raw.githubusercontent.com/feross/run-parallel/master/img.png) [![Sauce Test Status](https://saucelabs.com/browser-matrix/run-parallel.svg)](https://saucelabs.com/u/run-parallel)

### 安装

```
npm install run-parallel
```

### 用法

#### 平行(任务,(回调))

运行 `tasks` 并行的函数数组，不需要等到前一个 功能已完成。如果其中任何一个函数将错误传递给它的回调函数，则main `callback` 使用错误的值立即调用。一旦 `tasks` 有 完成后，结果传递给决赛 `callback` 作为数组。

也可以使用对象而不是数组。每个属性都将作为 函数和结果将传递给final `callback` 作为一个对象而不是 一个数组。这是处理结果的一种更具可读性的方式。

##### 参数

-   `tasks` -包含要运行的函数的数组或对象。每个函数传递一个 `callback(err, result)` 在错误完成时必须调用哪个函数 `err` (可以 是 `null`)和可选的 `result` 价值。
-   `callback(err, results)` -一个可选的回调运行一旦所有的函数 完成。这个函数获取一个包含所有结果的结果数组（或对象） 传递给任务回调的参数。

##### 例子

```js
var parallel = require('run-parallel')

parallel([
  function (callback) {
    setTimeout(function () {
      callback(null, 'one')
    }, 200)
  },
  function (callback) {
    setTimeout(function () {
      callback(null, 'two')
    }, 100)
  }
],
// optional callback
function (err, results) {
  // the results array will equal ['one','two'] even though
  // the second function had a shorter timeout.
})
```

这个模块基本上相当于 [`async.parallel`](https://github.com/caolan/async#paralleltasks-callback)，但它是 方便的只有一个功能，你需要而不是厨房水槽。模块化! 如果你是为浏览器服务，需要减少你的javascript，特别方便 包的大小。

在浏览器中工作很好 [browserify](http://browserify.org/)！

### 看到也

-   [run-auto](https://github.com/feross/run-auto)
-   [并行运行限制](https://github.com/feross/run-parallel-limit)
-   [run-series](https://github.com/feross/run-series)
-   [run-waterfall](https://github.com/feross/run-waterfall)

### 许可证

麻省理工学院。版权(c) [Feross Aboukhadijeh](http://feross.org/)。

## 常见问题

### run-parallel 是什么？

并行运行一个函数数组

### 如何安装 run-parallel？

在项目目录运行 npm install run-parallel，或使用 pnpm add / yarn add / bun add。

### run-parallel 支持 TypeScript 吗？

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

### run-parallel 支持 ESM 还是 CommonJS？

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

### run-parallel 可以商用吗？

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

### run-parallel 的下载量有多少？

根据 npm 官方下载统计，run-parallel 在 2026/10/05 – 2026/11/03 这 30 天内被下载 507,548,922 次，日均约 16,918,297 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### run-parallel 还在维护吗？

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

