我需要做的是接收一个字符串列表并将其转换为一个函数列表,用于检查给定键是否包含相应的字符串。我在尝试的是什么:
var words = ['f', 'b', 'b']; //I never know how this list is
for(i in words){
var str = words[i];
words[i] = function(key){
return key.indexOf(str) > -1;
}
}
在运行此脚本之后,我希望words
成为这个:
[
function(key){
return key.indexOf('f') > -1;
},
function(key){
return key.indexOf('b') > -1;
},
function(key){
return key.indexOf('b') > -1;
}
]
但是当我尝试words[0]('foo')
时,它会回复我false
。我做错了什么?