我有一个网页,如果在搜索框中输入了某些内容,它就会遍历该值的文件。我需要它以便搜索/查找不区分大小写。区分大小写必须保留在文件中,但出于比较目的,它忽略了大小写。
所以目前我正在使用下划线命令:
arr=_.where(arr,filter);
但是 2 个数组 arr
和 filter
- 无论大小写我都需要比较/使用它们所以最终结果 arr 包含上下混合的结果大小写但匹配 arr
中的值。
最佳答案
尝试使用 filter
相反:
var filter = ["Apple", "bANAna", "orange"];
var arr = ["apPle", "ORANGE"];
// make filter lower case once
var filterLower = _.invoke(filter, "toLowerCase");
var arr2 = _.filter(arr, function(v) {
// make entry lower case and see if it is in filterLower
return _.contains(filterLower, v.toLowerCase());
});
console.dir(arr2);
<script src="http://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.4.4/underscore-min.js"></script>
关于javascript - 如何在下划线中使用 _.where() 来比较值而不考虑大小写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27857577/