首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于标签JavaScript数组的自动完成

基于标签JavaScript数组的自动完成
EN

Stack Overflow用户
提问于 2022-07-06 10:30:06
回答 1查看 37关注 0票数 -1

我试图创建一个普通的JavaScript函数,将用户输入与标签数组进行比较,并返回最佳匹配。我创建了如下JSON索引:

代码语言:javascript
复制
[
    {
        "data-governance": {
            "tags": ["data", "governance"],
            "href": "data-governance.html"
        }
    },
    {
        "data-quality": {
            "tags": ["data", "quality"],
            "href": "data-quality.html"
        }
    }
]

我希望这个函数表现如下:如果用户输入"data",它应该同时返回数据治理和数据质量的href属性。但是,如果用户输入"data gov",它应该只返回数据治理href属性。

在RegEx中,我发现了一些使用字符串匹配完成自动完成的示例,但没有比较字符串数组(即标记)。

希望有人能给我指明正确的方向。

EN

回答 1

Stack Overflow用户

发布于 2022-07-06 10:41:46

你可以这样做,

代码语言:javascript
复制
const data = [
   {
      'data-governance': {
          tags: ['data', 'governance'],
          href: 'data-governance.html',
       },
   },
   {
      'data-quality': {
         tags: ['data', 'quality'],
         href: 'data-quality.html',
      },
   },
];

const findMatches = (items, tag) => {
  return items
     .filter((item) => {
        const { tags } = Object.values(item)[0];
        return tags.includes(tag);
     })
     .map((item) => Object.keys(item)[0]);
};

console.log(findMatches(data, "data"));

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72881938

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档