一个轻量级JavaScript全文搜索库,轻松实现站内离线搜索

 介绍

成都创新互联是一家集网站建设,沐川企业网站建设,沐川品牌网站建设,网站定制,沐川网站建设报价,网络营销,网络优化,沐川网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

Lunr.js是个用于浏览器的轻量级 JavaScript 全文搜索引擎。它为JSON文档建立索引,并提供一个简单的搜索界面来检索与文本查询比较匹配的文档对于一些小型的博客、开发者文档或 Wiki 网站来说,完全可以通过它实现站内离线搜索:

为什么使用它?

对于已经将所有数据存储在客户端中的Web应用程序,也能够在客户端上搜索该数据也是很有意义的。这样可以节省在服务器上添加额外的压缩服务。本地搜索索引将更快,没有网络开销,并且即使没有网络连接也将保持可用。

Github

目前Github上star数6.6k

 
 
  1. https://github.com/olivernn/lunr.js

简单示例

 
 
  1. var idx = lunr(function () {
  2.   this.field('title')
  3.   this.field('body')
  4.   this.add({
  5.     "title": "Twelfth-Night",
  6.     "body": "If music be the food of love, play on: Give me excess of it…",
  7.     "author": "William Shakespeare",
  8.     "id": "1"
  9.   })
  10. })

然后再像下面这样

 
 
  1. idx.search("love")

这将返回一个匹配文档列表,其中包含与搜索查询的匹配程度以及与该匹配相关的任何关联元数据的分数:

 
 
  1. [
  2.   {
  3.     "ref": "1",
  4.     "score": 0.3535533905932737,
  5.     "matchData": {
  6.       "metadata": {
  7.         "love": {
  8.           "body": {}
  9.         }
  10.       }
  11.     }
  12.   }
  13. ]

安装

只需在要使用它的页面中包含lunr.js源文件。所有现代浏览器均支持Lunr.js。

 
 
  1. npm install lunr

特性

(翻译或不够准确)

  • 全文搜索支持14种语言
  • 在查询时提升术语或在索引时提升整个文档
  • 范围搜索到特定字段
  • 模糊术语与通配符匹配或编辑距离

总结

在之前的文章中介绍过另一个全文搜索库FlexSearch.js,感兴趣的小伙伴也可以去看一看介绍,在这里也提前祝大家工作顺利,万事如意,身体健康!

本文名称:一个轻量级JavaScript全文搜索库,轻松实现站内离线搜索
分享网址:http://www.shufengxianlan.com/qtweb/news47/93297.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联