Javascript 如何将filter()和includes()与localeCompare一起使用以避免重音

Javascript 如何将filter()和includes()与localeCompare一起使用以避免重音,javascript,vue.js,Javascript,Vue.js,我正在寻找一种方法来过滤表,同时避免重音问题 let options = ['Hello', 'Hého', 'Heïho']; filterOptions(filterValue) { this.filteredOptions = this.options.filter( option => option.includes( filterValue ) ) }, 使用上述函数,当我在options中输入单词“Heho”进行搜索时,它不会返回任何结果,因

我正在寻找一种方法来过滤表,同时避免重音问题

let options = ['Hello', 'Hého', 'Heïho'];

filterOptions(filterValue) {
      this.filteredOptions = this.options.filter(
      option => option.includes( filterValue )
   )
 },
使用上述函数,当我在
options
中输入单词“Heho”进行搜索时,它不会返回任何结果,因为我没有输入重音

我试过用这个,但根本没用

filterOptions(filterValue) {
            this. filteredOptions = this. options.filter(
                option => option.includes( filterValue.localeCompare(option, undefined, { sensitivity: 'base' }) === 0 )
            )
        },

您知道如何过滤表格以避免重音吗?

只需使用逻辑进行过滤(使用未定义或“en”)。代码的问题是,它根据localeCompare返回的值来比较数组是否包含值true或false

options.filter(o => o.localeCompare('Heho', undefined, { sensitivity: 'base' }) === 0)

我找到了一个更简单的解决办法

filterOptions(filterValue) {
        this. filteredOptions = this. options.filter(
            option => option.toLowerCase().includes( filterValue.toLowerCase() ) 
        )
    },
我将所有字符串切换为小写以便比较