flexsearch是Web上最快且内存最灵活的全文搜索插件

flexsearch是Web上最快且内存最灵活的全文搜索插件

flexsearch是Web 上最快且内存最灵活的全文搜索插件,具有零依赖性,在原始搜索速度方面, FlexSearch 优于现有的每个搜索库,还提供灵活的搜索功能,如多字段搜索、语音转换或部分匹配。根据使用的选项,它还提供最节省内存的索引。FlexSearch 引入了一种名为“上下文索引”的新评分算法,该算法基于预先评分的词汇字典架构,与其他库相比,它实际上执行查询的速度高达 1,000,000 倍。FlexSearch 还为您提供了一个非阻塞异步处理模型以及 Web 工作者,以通过专用的平衡线程并行执行索引上的任何更新或查询。

支持的平台:

浏览器

Nodejs

使用方式:

nodejs

npm install flexsearch

使用方式

const { Index, Document, Worker } = require("flexsearch");

const index = new Index(options);
const document = new Document(options);
const worker = new Worker(options);

index.add(id, text);
index.search(text);
index.search(text, limit);
index.search(text, options);
index.search(text, limit, options);
index.search(options);

document.add(doc);
document.add(id, doc);
document.search(text);
document.search(text, limit);
document.search(text, options);
document.search(text, limit, options);
document.search(options);

worker.add(id, text);
worker.search(text);
worker.search(text, limit);
worker.search(text, options);
worker.search(text, limit, options);
worker.search(text, limit, options, callback);
worker.search(options);

cdn

<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/flexsearch.bundle.js"></script>

使用方式

var index = new FlexSearch.Index(options);
var document = new FlexSearch.Document(options);
var worker = new FlexSearch.Worker(options);

index.add(id, text);
index.search(text);
index.search(text, limit);
index.search(text, options);
index.search(text, limit, options);
index.search(options);

document.add(doc);
document.add(id, doc);
document.search(text);
document.search(text, limit);
document.search(text, options);
document.search(text, limit, options);
document.search(options);

worker.add(id, text);
worker.search(text);
worker.search(text, limit);
worker.search(text, options);
worker.search(text, limit, options);
worker.search(text, limit, options, callback);
worker.search(options);

我们以cdn方式来写一个简单完整的示例代码

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum=1.0,minimum=1.0,user-scalable=0" />
    <title>BFW NEW PAGE</title>
    <script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/flexsearch.bundle.js"></script>
    <script type="text/javascript">
        var index = new FlexSearch.Index();
        index.add(10025, "John Doe");
        var tt=index.search("John");
        
        console.log(tt)
    </script>
    <style>
    </style>
</head>

<body>

</body>

</html>

github地址:https://github.com/nextapps-de/flexsearch
立即下载flexsearch.bundle.js查看所有js插件

网友评论0

程序员在线工具箱