# @exodus/basic-utils 中文文档

规范地址：https://npmcn.com/package/%40exodus/basic-utils/

版本：5\.2\.1
npm 元数据更新时间：2026-10-09T20:39:02.782Z
中文译文更新时间：2026-11-14T03:47:28.089Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40exodus/basic-utils
原文对照：https://npmcn.com/package/%40exodus/basic-utils/?lang=original
项目主页：https://github.com/ExodusMovement/exodus/tree/master/libs/libraries/basic-utils
源码仓库：https://github.com/ExodusMovement/exodus

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

- 包体积（解压后）：43.2 kB，40 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：3 个
- 首次发布：2022-05-04T16:02:48.544Z
- 最新版本发布：2026-10-09T20:39:02.489Z
- 近 30 天下载量：116056（2026-10-14 至 2026-11-12，npm 官方下载统计）
- 已发布版本数：53（近 12 个月 9 个）

## 中文简介

轻量级的摇篮等齿轮.

## 安装

```sh
npm install @exodus/basic-utils
```

也可以使用：`pnpm add @exodus/basic-utils`、`yarn add @exodus/basic-utils`、`bun add @exodus/basic-utils`

## README

# @ exodus/ basic- utils

[![npm](https://img.shields.io/npm/v/@exodus/basic-utils.svg?style=flat-square)](https://www.npmjs.com/package/@exodus/basic-utils)

出海多斯项目常用的轻量级lodash-like utils.

## 安装

```
pnpm add @exodus/basic-utils
```

## 使用量

### 同步 时间

```js
import { SynchronizedTime } from '@exodus/basic-utils'

console.log(SynchronizedTime.now())
```

### 净输入

```js
import { cleanInput } from '@exodus/basic-utils'

cleanInput('1.2abc@!#') // returns 1.2
```

## 平面图

将对象平整为数组 `[...path, leafValue]` 数组.

```js
import { flattenToPaths } from '@exodus/basic-utils'

flattenToPaths({
  harry: {
    wand: 'holly',
  },
  grindie: {
    wand: 'yew',
  },
  voldie: {
    wand: 'yew',
  },
})

// [
//   ['harry', 'wand', 'holly'],
//   ['grindie', 'wand', 'yew'],
//   ['voldie', 'wand', 'yew'],
// ]
```

## 类似 Lodash 的函数

这个 [遵循职能](https://npmcn.com/package/%40exodus/basic-utils/src/lodash.ts) 和他们的同行们一样工作,但有一些警告:

-   它们对于参数是严格的,不支持数组,字符串等多个选项. 譬如说, `pick(users, ['name', 'age'])` 但是没有 `pick(users, 'name')`请在使用前看到测试.
-   创建对象的函数返回一个无效原型对象.

在使用函数之前,检查其单位测试,以确保您正确使用API.

```js
import {
  pick,
  pickBy,
  omit,
  mapKeys,
  mapValues,
  keyBy,
  orderBy,
  isNil,
  isObjectLike,
  isPlainObject,
  difference,
  intersection,
  partition,
  set,
} from '@exodus/basic-utils'
```

## 代理助手

见 [./弧/同步](https://npmcn.com/package/%40exodus/basic-utils/src/async.ts) 财务报告和审定财务报表 [./src/p-debouncing.ts (中文(简体) )](https://npmcn.com/package/%40exodus/basic-utils/src/p-debounce.ts) 更多细节.

-   `mapValuesAsync`, (中文(简体) ), `filterAsync`, (中文(简体) ), `partitionAsync` 的同步对等器 `mapValues`, (中文(简体) ), `filter`, (中文(简体) ), `partition` 页:1.
-   `pDebounce`数字 : [p - 弹出](https://www.npmjs.com/package/p-debounce),从原件中临时复制,以避免作为无害环境管理运输.

## 原型污染安全

-   [获得奥恩财产](https://npmcn.com/package/%40exodus/basic-utils/src/get-own-property.ts)
-   [定义财产](https://npmcn.com/package/%40exodus/basic-utils/src/define-property.ts)

## 常见问题

### @exodus/basic-utils 是什么？

轻量级的摇篮等齿轮\.

### 如何安装 @exodus/basic-utils？

在项目目录运行 npm install @exodus/basic-utils，或使用 pnpm add / yarn add / bun add。

### @exodus/basic-utils 支持 TypeScript 吗？

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

### @exodus/basic-utils 支持 ESM 还是 CommonJS？

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

### @exodus/basic-utils 可以商用吗？

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

### @exodus/basic-utils 的下载量有多少？

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

### @exodus/basic-utils 还在维护吗？

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

