# didyoumean 中文文档

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

版本：1\.2\.2
npm 元数据更新时间：2022-06-15T03:34:05.151Z
中文译文更新时间：2026-11-05T16:46:12.923Z
软件包许可：Apache-2\.0

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

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

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

- 包体积（解压后）：17.3 kB，5 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- 运行依赖：0 个
- 首次发布：2013-01-19T21:53:32.674Z
- 最新版本发布：2021-06-24T14:00:09.748Z
- 近 30 天下载量：133666492（2026-10-05 至 2026-11-03，npm 官方下载统计）
- 已发布版本数：4（近 12 个月 0 个）

## 中文简介

通过编辑距离将人类质量输入与潜在匹配匹配.

## 安装

```sh
npm install didyoumean
```

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

## README

# youMean.js - 一个简单的 JavaScript 匹配引擎

[可用于 GitHub](https://github.com/dcporter/didyoumean.js)。 。 。 .

一个超简单、高度优化的联署材料库,用于将人的高质量投入与一份潜力清单相匹配 火柴。 比赛。 您可以使用它向用户建议错误拼写的命令行工具选项, 或者提供 链接到您404页上附近的有效 URL。 (以下实例取自个人项目, 来,来 [HTML5 名片](http://dcporter.aws.af.cm/me),它用YouMean.js来建议正确 错误拼入的 URL, 例如 [dcporter.aws.af.cm/me/instagarm (英语)](http://dcporter.aws.af.cm/me/instagarm). ) (中文(简体) ) 使用 [Levenshtein 距离算法](https://en.wikipedia.org/wiki/Levenshtein_distance)。 。 。 .

youMean.js在浏览器和节点.js中工作。 安装用于节点:

```
npm install didyoumean
```

## 实例

匹配字符串列表 :

```
var input = 'insargrm'
var list = ['facebook', 'twitter', 'instagram', 'linkedin'];
console.log(didYouMean(input, list));
> 'instagram'
// The method matches 'insargrm' to 'instagram'.

input = 'google plus';
console.log(didYouMean(input, list));
> null
// The method was unable to find 'google plus' in the list of options.
```

与对象列表相匹配 :

```
var input = 'insargrm';
var list = [ { id: 'facebook' }, { id: 'twitter' }, { id: 'instagram' }, { id: 'linkedin' } ];
var key = 'id';
console.log(didYouMean(input, list, key));
> 'instagram'
// The method returns the matching value.

didYouMean.returnWinningObject = true;
console.log(didYouMean(input, list, key));
> { id: 'instagram' }
// The method returns the matching object.
```

## {\\fn黑体\\fs22\\bord1\\shad0\\3aHBE\\4aH00\\fscx67\\fscy66\\2cHFFFFFF\\3cH808080}You Mean(str, list, \[key\]) {\\fn黑体\\fs22\\bord1\\shad0\\3aHBE\\4aH00\\fscx67\\fscy66\\2cHFFFFFF\\3cH808080}你有没有说

-   str:要匹配的字符串输入.
-   列表:要匹配的字符串或对象.
-   键(选项): 如果您的列表数组包含对象, 您必须指定包含字符串的密钥 {\\fn黑体\\fs22\\bord1\\shad0\\3ahbe\\4ah00\\fscx67\\fscy66\\2chffffff\\3ch808080}对决.

返回:最接近的匹配字符串,如果没有字符串超过阈值则无效.

## 选项

选项设置在 diYouMean 函数对象上。 你可以随时改变.

### 阈值

默认情况下,该方法只返回编辑距离小于长度40%(0.4x)的字符串. 例如,如果一个十字母字符串是五位编辑,远离其最接近的匹配,则方法会返回为无效.

您可以通过设置“ 门槛” 值来控制此功能 。 例如,设置 编辑距离阈值至输入字符串长度的50%:

```
didYouMean.threshold = 0.5;
```

要返回最近的匹配, 无论阈值如何, 请设置为无效 .

### 绝对

此选项在行为上与阈值相同, 但取整数的编辑步骤 。 譬如说, 如果阈值确定为20(默认值),则该方法只返回编辑距离的字符串 少于20岁。 这两种选择都适用.

### 敏感性

默认情况下,该方法将进行对大小写不敏感的比较. 如果你想强迫案件敏感性,请设定 "caseSensitive"值为真:

```
didYouMean.caseSensitive = true;
```

### 无结果

默认情况下,如果没有足够接近的匹配,该方法会返回为无效. 您可以在此更改此值 .

### 返回窗口对象

默认情况下,该方法会返回取胜的字符串值(如果有的话). 如果列表中包含对象 相对于字符串,您可以将返回Winning对象设定为真实 .

```
didYouMean.returnWinningObject = true;
```

此选项对字符串列表没有影响 .

### 返回首选项

默认情况下,该方法将搜索所有值并返回最接近的匹配. 如果你只是寻找一个"好..." 足够"匹配,您可以适当设定阈值并设定返回 FirstMatch 真实到实质性速度 事情起来.

## 许可证

(原始内容存档于2013-2014年). You Mean版权 (c) 2013-2014 Dave Porter.

根据Apache许可证第2.0版("License"); 您不得使用此文件,除非符合许可证. 您可以获取许可证副本 [这里](http://www.apache.org/licenses/LICENSE-2.0)。 。 。 .

除非适用的法律要求或书面同意,否则软件 根据许可证发放的是在“AS IS”BASIS上发放的, 没有任何明示或暗示的警告或条件. 有关许可的特定语言的许可证 许可证的限制.

## 常见问题

### didyoumean 是什么？

通过编辑距离将人类质量输入与潜在匹配匹配\.

### 如何安装 didyoumean？

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

### didyoumean 支持 TypeScript 吗？

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

### didyoumean 支持 ESM 还是 CommonJS？

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

### didyoumean 可以商用吗？

didyoumean 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

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

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

### didyoumean 还在维护吗？

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

