Javascript 查找字符串的索引
我有一个带有页面ID的长字符串数组;当当前页面ID与数组中的ID匹配时,需要进行填充(在本测试中发出警报)。 无论url是否包含数组中的某个ID,该警报都会在任何页面上弹出。我的if语句有什么问题:Javascript 查找字符串的索引,javascript,arrays,Javascript,Arrays,我有一个带有页面ID的长字符串数组;当当前页面ID与数组中的ID匹配时,需要进行填充(在本测试中发出警报)。 无论url是否包含数组中的某个ID,该警报都会在任何页面上弹出。我的if语句有什么问题:if(pageHref.indexOf(id))?谢谢你的建议 var pageHref = window.location.href; var ids = ['14528','14417','17529']; for (var i = 0; i < ids.length; i++) {
if(pageHref.indexOf(id))
?谢谢你的建议
var pageHref = window.location.href;
var ids = ['14528','14417','17529'];
for (var i = 0; i < ids.length; i++) {
var id = ids[i];
if (id.length > 0) {
if(pageHref.indexOf(id)){
//do something
alert('a');
}
}
}
var pageHref=window.location.href;
变量ID=['14528','14417','17529'];
对于(变量i=0;i0){
if(pageHref.indexOf(id)){
//做点什么
警报(“a”);
}
}
}
IndexOf返回一个数字,如果该数字为-1,则不存在匹配项
举个例子。
pageHref.indexOf(id)!=-1
一篇博客文章有一个表,解释javascript条件语句中哪些值的计算结果为true。对于数值,它仅表示+0、-0和NaN值为false。因为indexOf对于不匹配返回-1,所以对于不匹配的ID,它的计算结果为true。您可能希望使用:
if(pageHref.indexOf(id) > -1)
ids.find(id=>pageHref.indexOf(id)!==-1)
indexOf
返回-1
如果没有找到,为什么对答案投反对票?好问题。。非常奇怪…谢谢大家,这很有帮助。我还没有15岁的名声,所以我不会把我投给你的票计算在内。为什么有人给出否定的答案?他们都工作