有一种方法可以降低indexOf的灵敏度吗?
像这样
var arr = ["Hello", "stackoverflow"]
var idx = arr.indexOf("stack")
将idx的值从-1改为1
var arr = ["Hello", "stackoverflow"]
var idx = arr.indexOf("stack")
将idx的值从-1改为1
function searchArr(arr, str) {
for (var i=0;i<arr.length;i++) {
if (arr[i].indexOf(str) !== -1) return i;
}
return -1;
}
searchArr(arr, 'stack');// returns 1
这段代码会简单地遍历你作为第一个参数输入的数组,直到找到包含搜索字符串的元素时停止。
undefined
。---我已经编辑过了,现在它在找不到匹配项时返回-1。 - Joeytje50var arr = ["Hello", "stackoverflow"];
var idx =arr.map(function(s) {return s.indexOf("stack") !== -1});
var arr = ["Hello", "stackoverflow"];
var matchFound =arr.some(function(s) {return s.indexOf("stack") !== -1});
some
而不是 filter
。 - Bergi