Javascript中的Levenshtein算法

的Javascript实现 Levenshtein算法 具有特定于语言环境的排序器支持。它使用 fastest-levenshtein 在引擎盖下面。
特性
- 在node.js和浏览器中工作。
- 如果需要,对语言环境敏感的字符串进行比较。
- 全面的测试套件。
安装
$ npm install fast-levenshtein
CDN
最新版本现在也可以在 https://npm-cdn.com/pkg/fast-levenshtein/
例子
默认使用
var levenshtein = require('fast-levenshtein');
var distance = levenshtein.get('back', 'book'); // 2
var distance = levenshtein.get('我愛你', '我叫你'); // 1
区域敏感的字符串比较
它支持使用 Intl。排序器 对于语言环境敏感的字符串比较:
var levenshtein = require('fast-levenshtein');
levenshtein.get('mikailovitch', 'Mikhaïlovitch', { useCollator: true});
// 1
构建和测试
要构建代码并运行测试:
$ npm install -g grunt-cli
$ npm install
$ npm run build
它使用 fastest-levenshtein 在引擎盖下面。
贡献
如果您希望提交拉取请求,请为您所做的任何更改更新和/或创建新的测试,并确保grunt构建通过。
看到 CONTRIBUTING.md 获取详细信息。
许可证
MIT -见 LICENSE.md
关于 fast-levenshtein 的常见问题
fast-levenshtein 是什么?
Levenshtein算法的有效实现,具有特定于地区的排序器支持。
如何安装 fast-levenshtein?
在项目目录运行 npm install fast-levenshtein,或使用 pnpm add / yarn add / bun add。
fast-levenshtein 支持 TypeScript 吗?
该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/fast-levenshtein 是否存在。
fast-levenshtein 支持 ESM 还是 CommonJS?
以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。
fast-levenshtein 可以商用吗?
fast-levenshtein 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。
fast-levenshtein 的下载量有多少?
根据 npm 官方下载统计,fast-levenshtein 在 2026/10/05 – 2026/11/03 这 30 天内被下载 576,636,104 次,日均约 19,221,203 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。
fast-levenshtein 还在维护吗?
最新版本 3.0.0 发布于 2020/07/22(6 年前);至今共发布 20 个版本,其中过去 12 个月发布了 0 个;首次发布于 2013/04/18。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。