npm 包 fuse-checkmark 使用教程

介绍

fuse-checkmark 是一个基于 Fuse.js 的中英文字符模糊匹配工具,适用于前端和 Node.js 环境。使用 Fuse.js 的模糊匹配算法,快速找到最相似的字符串,且中英文字符均有支持。该工具封装了一些常用的模糊匹配设置,并提供了一些使用的便捷方式。

安装

你可以通过使用 npm 包管理器安装 fuse-checkmark:

--- ------- -------------- ------

使用

以下是 fuse-checkmark 的使用方式:

----- - ------------- - - -------------------------

----- ---- - -
    ------ -------- --- ---
    ------ --------- --- ---
    ------ --------- --- ---
    ------ -------- --- --
-

----- ------ - ------------------- -------- -------
-------------------

运行结果是:

- - ----- -------- --- - - -

在以上代码中,我们通过引入了 fuse-checkmark 模块,然后将需要匹配的列表和待匹配的字符串传递给 fuseCheckmark 函数。可以通过第三个参数指定进行匹配的属性名(name),返回的结果是一个数组,包含了与待匹配字符串最相似的对象。

API

fuseCheckmark(list, query, key)

  • list:需要匹配的列表,数组类型,每个元素是一个对象。
  • query:待匹配的字符串。
  • key:指定进行匹配的属性名,可选项,默认为 name

返回与待匹配字符串最相似的元素数组。

fuseCheckmarkList(list, query, options)

  • list:需要匹配的列表,数组类型,每个元素是一个对象。
  • query:待匹配的字符串。
  • options:可选项对象,可包含以下属性:
    • keys:指定进行匹配的属性集合,数组类型,默认为 ['name']
    • minMatchCharLength:指定最小匹配到字符长度,整数类型,默认为 1
    • threshold:指定匹配阈值,浮点数类型,范围在 0~`1,默认为 0.6`。
    • limit:指定匹配结果数的限制,整数类型,默认为 10

返回与待匹配字符串最相似的结果数组。

示例

以下是一个使用较为详细的示例:

----- - ----------------- - - -------------------------

----- ---- - -
    ------ ------ ------- ----- ------ -------
    ------ ----- --- ---- ------ -------
    ------ ------- -------- -- -------- ------ -------
    ------ ----- ------- --- ---- ------ -------
    ------ --- ------- ------ ------ -------
-

----- ------ - ---------
----- -------- - -
    ----- ---------
    ------------------- --
    ---------- ----
    ------ -
-
----- ------- - ----------------------- ------- ---------
----------------------- --------

----- ------ - --- ---- ----
----- -------- - -
    ----- ---------
    ------------------- --
    ---------- ----
    ------ -
-
----- ------- - ----------------------- ------- ---------
----------------------- --------

----- ------ - -------
----- -------- - -
    ----- ----------
    ------------------- --
    ---------- ----
    ------ --
-
----- ------- - ----------------------- ------- ---------
----------------------- --------

运行结果是:

-------- - - ----- ------ ------- ----- ------ ----- - -
-------- - - ----- ----- ------- --- ---- ------ ----- - -
-------- --

以上代码中,我们先定义了一个列表数组,然后使用 fuseCheckmarkList 函数进行不同的匹配操作。在第一个例子中,我们通过指定匹配的属性为 name,设置了最小匹配字符长度为 2,阈值为 0.3,限制了最多匹配 3 条结果,匹配结果返回了与待匹配字符串最相似的结果。在第二个例子中,我们使用了一个更加复杂的字符串,并且指定了四种匹配属性,设置的阈值比第一个例子要高一些,返回的结果中包含了 Asus Zenbook Pro 14 笔记本电脑。在第三个例子中,我们设置的待匹配字符串为一个数字,限制了最小匹配到 4 个字符,阈值为 0.5,由于列表中没有匹配到结果,返回了一个空数组。

结论

fuse-checkmark 是一个非常适用于前端和 Node.js 环境的模糊匹配工具,可用于很多不同的场景。本文介绍了它的安装、使用方法和 API,通过示例代码详细演示了不同的配置和匹配方式。我们可以根据具体的需求来定制化自己的匹配算法,提高了匹配的准确性和效率。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60065b44c6eb7e50355dbe4f


猜你喜欢

  • npm 包 chin-plugin-inkscape 使用教程

    简介 chin-plugin-inkscape 是一个基于 Inkscape 的 npm 包,可以用于在前端项目中生成矢量图形。它支持多种格式的输入和输出,如 SVG、PDF、EPS 等。

    3 年前
  • npm 包 chin-plugin-json 使用教程

    简介 chin-plugin-json 是一个基于 npm 包的插件,用于解析 JSON 格式的数据并根据指定的格式输出数据。该插件能够在前端开发中解决 JSON 数据的解析问题,帮助开发人员更加高效...

    3 年前
  • npm 包 chin-plugin-svgr 使用教程

    简介 NPM 是 Node.js 的包管理器,提供了丰富的第三方包供开发者使用和分享。chin-plugin-svgr 是一个基于 SVGR 的 NPM 包,旨在将 SVG 图标文件转化成可直接在 R...

    3 年前
  • npm 包 chin-plugin-unified 使用教程

    前言 随着互联网的发展,前端的重要性也越来越凸显。在前端的开发中,npm 包是不可或缺的一部分,它们可以帮助我们完成很多重复且复杂的工作。而 chin-plugin-unified 就是一款值得推荐的...

    3 年前
  • npm 包 prex-es5 使用教程

    在前端开发中,我们经常需要使用一些 JavaScript 库和工具来帮助我们进行开发。其中,npm 是一个非常流行的 JavaScript 包管理器,可以让我们方便地下载和安装各种开源 JavaScr...

    3 年前
  • npm 包 pomelo-x 使用教程

    简介 pomelo-x 是一个基于 Node.js 的分布式游戏服务器框架,支持实时推送和大规模并发。底层框架 pomelo 已经成为了国内游戏服务器开发行业的标准之一。

    3 年前
  • NPM 包 template-code-gen 使用教程

    介绍 template-code-gen 是一个基于 Node.js 平台的 NPM 包,专门用于生成前端项目中的代码模板。它可以快速生成 Vue、React、Angular 等前端框架的组件、指令、...

    3 年前
  • npm 包 hapi-gen 使用教程

    在前端开发中,node.js 和 npm 是不可少的工具,尤其是在开发 web 应用时。hapi-gen 是 npm 包中的一个工具,它可以帮助我们快速地创建 Hapi.js 项目结构。

    3 年前
  • npm 包 huangge-aurora-imui-react-native 使用教程

    在前端开发中,可以使用 React Native 来构建跨平台的原生应用程序。而为了实现一些实时通讯、聊天等功能,我们需要一个类似于即时通讯应用程序的聊天界面。本文将介绍一款非常优秀的 npm 包,h...

    3 年前
  • npm 包 @arcticzeroo/eslint-config 使用教程

    在前端开发中,代码的规范和统一性至关重要,而 eslint 便是一个可以帮助我们检测代码规范的工具。本文将介绍使用 @arcticzeroo/eslint-config 这个 npm 包来规范我们的代...

    3 年前
  • npm 包 react-gpt-prebid 使用教程

    在前端开发中,我们常常需要使用第三方库来提高开发效率和功能性。而 npm 是一个非常流行的 JavaScript 包管理器,可以帮助我们方便地管理和使用各种 JavaScript 包。

    3 年前
  • npm 包 webpack-error-notification-plugin 使用教程

    在前端开发中,当 webpack 编译出错时会给出相应的错误提示,但我们往往可能会错过这些信息。webpack-error-notification-plugin 是一个能够为错误信息提供可视化通知的...

    3 年前
  • npm包oncloud.modbus 使用教程

    前言 oncloud.modbus是一个基于JavaScript的开源npm软件包,集成了modbus通信协议,提供了一个易于使用的API,使得开发者可以轻松地建立基于modbus的客户端和服务器。

    3 年前
  • npm 包 abos 使用教程

    什么是 abos abos 是一个基于 Node.js 的命令行工具,用于将本地代码生成一个可以直接在浏览器中运行的静态站点。它的特点是简单易用,支持自定义主题和插件,可以满足大部分静态网站需求。

    3 年前
  • npm 包 atlas-repo-info 使用教程

    在前端开发中,使用 npm 包管理器与现有的软件包可以显著提高我们的工作效率。其中,atlas-repo-info 是一个非常实用的 npm 包,它可以帮助我们获取 GitHub 仓库的信息,以便更好...

    3 年前
  • npm 包 simple-hex-to-rgb 使用教程

    简介 在前端开发中,颜色选择是一个非常常见且重要的操作。在一些需要使用颜色的场景中,可能需要将颜色从十六进制转换为 RGB 值,这时候就需要用到 simple-hex-to-rgb 这个 npm 包。

    3 年前
  • npm 包 chin-plugin-favicons 使用教程

    简介 chin-plugin-favicons 是一款基于 Node.js 的 npm 包,可以帮助前端开发人员生成网站的 favicon 图标。 安装 在项目目录下使用 npm 命令进行安装: --...

    3 年前
  • npm包"ci.sh"使用教程

    简介 "ci.sh"是一个npm包,提供了一个可重用的shell脚本,帮助前端projcet通过Gitlab CI等工具自动化构建。该脚本可以执行多种操作,如安装依赖、读取配置文件、打包和上传静态资源...

    3 年前
  • 前端技术文章:使用 npm 包 eltoc-firebase-chat

    在构建现代化 Web 应用程序时,实时聊天的需求越来越普遍。Firebase 是一个流行的实时数据库和托管服务,绝大多数人都使用它来处理用户的实时消息。有一些出色的 JavaScript 库可以使在 ...

    3 年前
  • npm 包 @movilizame/relational-pouch 使用教程

    前言 @movilizame/relational-pouch 是一个用于前端开发的 npm 包,它可以让我们在浏览器端使用 PouchDB 来实现关系型数据的存储和查询。

    3 年前

相关推荐

    暂无文章