# @dr\.pogodin/js-utils 中文文档

规范地址：https://npmcn.com/package/%40dr.pogodin/js-utils/

版本：0\.2\.0
npm 元数据更新时间：2026-07-04T00:30:46.247Z
中文译文更新时间：2026-11-12T18:42:04.534Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40dr.pogodin/js-utils
原文对照：https://npmcn.com/package/%40dr.pogodin/js-utils/?lang=original
项目主页：https://github.com/birdofpreyru/js-utils#readme
源码仓库：https://github.com/birdofpreyru/js-utils

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

- 包体积（解压后）：65.6 kB，35 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：1 个
- 首次发布：2023-04-27T11:16:26.893Z
- 最新版本发布：2026-07-04T00:30:46.145Z
- 近 30 天下载量：42455（2026-10-13 至 2026-11-11，npm 官方下载统计）
- 已发布版本数：28（近 12 个月 5 个）

## 中文简介

JavaScript (TypeScript) 公用设备的收藏.

## 安装

```sh
npm install @dr.pogodin/js-utils
```

也可以使用：`pnpm add @dr.pogodin/js-utils`、`yarn add @dr.pogodin/js-utils`、`bun add @dr.pogodin/js-utils`

## README

# JS Utils 乌蒂尔斯

[![Latest NPM Release](https://img.shields.io/npm/v/@dr.pogodin/js-utils.svg)](https://www.npmjs.com/package/@dr.pogodin/js-utils) [![NPM Downloads](https://img.shields.io/npm/dm/@dr.pogodin/js-utils.svg)](https://www.npmjs.com/package/@dr.pogodin/js-utils) [![CircleCI](https://dl.circleci.com/status-badge/img/gh/birdofpreyru/js-utils/tree/master.svg?style=shield)](https://app.circleci.com/pipelines/github/birdofpreyru/js-utils) [![GitHub repo stars](https://img.shields.io/github/stars/birdofpreyru/js-utils?style=social)](https://github.com/birdofpreyru/js-utils) [![Dr. Pogodin Studio](https://raw.githubusercontent.com/birdofpreyru/js-utils/master/.README/logo-dr-pogodin-studio.svg)](https://dr.pogodin.studio/docs/js-utils)

重新投资/包装的目的是从 [反应 Utils](https://github.com/birdofpreyru/react-utils) 块 并非针对反应的,因此也是有用的交叉非反应项目, 让他们重新使用 在一般的JavaScript(和TypeScript)项目中.

至少第一次,所有搬进来的东西 都会被曝光 [反应 Utils](https://github.com/birdofpreyru/react-utils) 和以前一样 还有这些文件 将保留在 [https://dr.pogodin.studio/docs/react-utils/index.html (中文(简体) )](https://dr.pogodin.studio/docs/react-utils/index.html)。 。 。 . 也许以后,如果时间允许, 这将是一个独立的图书馆, 但在此之前,它将被保留并用作独立的自由,但不会 非常有记录.

是的,源代码将用 TypeScript 写入,并为库 向国家预防机制发布的版本还将被汇编成平版JavaScript. 因此,国家防范机制一揽子计划的消费者将有机会获得这两项技术服务(第2段)`/src` 文件夹) 和联署材料`/build` 文件夹)版本的库.

[![Sponsor](https://raw.githubusercontent.com/birdofpreyru/js-utils/master/.README/sponsor.svg)](https://github.com/sponsors/birdofpreyru)

## 内容

库当前导出(以下链接导致 [反应 Utils](https://github.com/birdofpreyru/react-utils) 医生, 但同样的东西可以从这里导入 `@dr.pogodin/js-utils`, (中文(简体) ), (以同样方式使用):

### 常数

-   [证交会 MS](https://dr.pogodin.studio/docs/react-utils/docs/api/utils/time#sec_ms) 1秒以毫秒表示.
-   [分钟( M)](https://dr.pogodin.studio/docs/react-utils/docs/api/utils/time#min_ms) 一分钟以毫秒表示.
-   [小时( M)](https://dr.pogodin.studio/docs/react-utils/docs/api/utils/time#hour_ms) 1小时以毫秒表示.
-   [日期( M)](https://dr.pogodin.studio/docs/react-utils/docs/api/utils/time#day_ms) 一日以毫秒表示.
-   [年数( M)](https://dr.pogodin.studio/docs/react-utils/docs/api/utils/time#year_ms) 一年以毫秒表示.

### 类型

-   `Extends<Base, T extends Base>` ——校验编译类型时 **T级** 扩展( 可指派给) 该类型 **基础**; 返回 **T级** 如果成功的话.
-   `Implements<Base, T extends Base & ...>` - 校验编译时间 类型 **T级** 扩展( 可指派给) 该类型 **基础**,还有 定义的所有(如果有)可选字段 **基础**; 返回 **T级** 若为 验证通过.
-   `ObjectKey` —— 说 **字符串** | **编号** | **符号** —— 说 TypeScript中对象键最通用的有效类型.

### 职能

-   `assertEmptyObject()` 给定的对象是空的, 编译和运行时间.
-   [计时器( )](https://dr.pogodin.studio/docs/react-utils/docs/api/utils/time#timer) ——创建 [障碍](https://dr.pogodin.studio/docs/react-utils/docs/api/classes/Barrier) 它在指定超时后解决.
-   [复数( )](https://dr.pogodin.studio/docs/react-utils/docs/api/functions/withretries) ——多次尝试某项行动直至成功.

### 类

-   [障碍](https://dr.pogodin.studio/docs/react-utils/docs/api/classes/Barrier) A级 [答应](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) 与 **解析()** 财务报告和审定财务报表 **拒绝( )** 曝光为 实例方法.
    
-   [缓存](https://dr.pogodin.studio/docs/react-utils/docs/api/classes/Cached) ——以时间戳为基础的(a)同步检索项目缓存 过期.
    
-   [发送器](https://dr.pogodin.studio/docs/react-utils/docs/api/classes/Emitter) ——简单可听的数据发报器.
    
-   [司马发](https://dr.pogodin.studio/docs/react-utils/docs/api/classes/Semaphore) ——同步原始.
    
-   `Timer` ——核心实施 [计时器( )](https://dr.pogodin.studio/docs/react-utils/docs/api/utils/time#timer) 函数,允许 以创建更多定制的计时器对象. _待记录_。 。 。 .
    

* * *

此库的存储器还主机为一些文档, 请参考 其他项目,视需要:

-   [常识版本](https://npmcn.com/package/%40dr.pogodin/js-utils/docs/common-sense-versioning.md) —— 说 对产品改版方法的描述比较松散,使产品改版方法更加宽松 感觉比 [交换器](https://semver.org/)。 。 。 .

## 常见问题

### @dr\.pogodin/js-utils 是什么？

JavaScript \(TypeScript\) 公用设备的收藏\.

### 如何安装 @dr\.pogodin/js-utils？

在项目目录运行 npm install @dr\.pogodin/js-utils，或使用 pnpm add / yarn add / bun add。

### @dr\.pogodin/js-utils 支持 TypeScript 吗？

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

### @dr\.pogodin/js-utils 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @dr\.pogodin/js-utils 可以商用吗？

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

### @dr\.pogodin/js-utils 的下载量有多少？

根据 npm 官方下载统计，@dr\.pogodin/js-utils 在 2026/10/13 – 2026/11/11 这 30 天内被下载 42,455 次，日均约 1,415 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @dr\.pogodin/js-utils 还在维护吗？

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

