首页 > 解决方案 > 为什么我们在这段代码中使用 query.toLowerCase()

问题描述

我试图理解第二个toLowerCase。这是代码。

var fruits = ['apple', 'banana', 'grapes', 'mango', 'orange'];

function filterItems(query) {
  return fruits.filter(function(el) {
    return el.toLowerCase().indexOf(query.toLowerCase()) > -1;
  })
}

console.log(filterItems('ap')); // ['apple', 'grapes']

标签: javascriptarrays

解决方案


该函数比较两个字符串不区分大小写,所以我们说Abcand abC。第一个.toLowerCase降到Abcabc第二个abC降到abc

因此,您可以成功地将两者相互比较,如果没有两者中的任何一个,您就无法做到这一点。

编辑:准确地说,“indexOf”-方法在内部比较两个需要相等大小写的值。


推荐阅读