0

从这个著名的高票数问题中,我找到了一种有效的方法来检查字符串是否包含另一个字符串String.indexOf

var abcde = "abcdefg";
var abc = "abc";
alert(abc.indexOf(abcde) != -1);//return true

但是当我尝试这样做时:

var url = "https://stackoverflow.com/questions/1789945/method-like-string-contains-in-javascript";
var s = "stackoverflow";
alert(s.indexOf(url) != -1); //**return false,but I think it 'should' return true!**

我很好奇为什么包含符号或斜线的更复杂的/ 似乎失败了。还是我错过了什么?

4

1 回答 1

5

您搜索的字符串是参数,而不是接收者。

改变

alert(s.indexOf(url) != -1); 

alert(url.indexOf(s) != -1); 

(为了您自己的舒适,您还应该使用console.log而不是 alert)

于 2013-08-07T09:23:16.977 回答