当前位置: 首页 > 知识库问答 >
问题:

javascript - 请问,想要忽略大小写,请问应该如何优化此代码呢?

越运锋
2023-10-31
// 搜索方法  function searchKeys(searchParam: string): string[] {    const keys: string[] = Object.keys(searchData).filter((key: string) => {      const keywords: string[] = searchData[key];      return keywords.some((keyword: string) => keyword.includes(searchParam));    });    return keys;  }

请问,想要忽略大小写,请问应该如何优化呢?

共有2个答案

颛孙镜
2023-10-31
function searchKeys(searchParam: string): string[] {  const loweredSearchParam = searchParam.toLowerCase();  const keys: string[] = Object.keys(searchData).filter((key: string) => {    const keywords: string[] = searchData[key];    return keywords.some((keyword: string) => keyword.toLowerCase().includes(loweredSearchParam));  });  return keys;}
贺奕
2023-10-31

你可以在搜索字符串前将其转换为小写(或者大写),然后再进行搜索。这样可以确保搜索过程忽略大小写。

这是优化后的代码:

// 搜索方法function searchKeys(searchParam: string): string[] {  const keys: string[] = Object.keys(searchData).filter((key: string) => {    const keywords: string[] = searchData[key];    return keywords.some((keyword: string) => keyword.toLowerCase().includes(searchParam.toLowerCase()));  });  return keys;}

在这里,我使用了 toLowerCase() 方法将关键词和搜索参数都转换为小写,然后再进行比较。这样就可以确保搜索过程忽略大小写。

 类似资料: