Javascript if(window.location.hash!==“search”)

Javascript if(window.location.hash!==“search”),javascript,Javascript,这个语法有什么问题吗?这似乎对我不起作用,即使我提醒哈希标记并且它与if语句匹配 我的代码: if(window.location.hash) { var thehash = window.location.hash; if (thehash !== "#search"){ alert(thehash); // returns "#search" thehash = thehash.replace(/#/g, '/'); window.loc

这个语法有什么问题吗?这似乎对我不起作用,即使我提醒哈希标记并且它与if语句匹配

我的代码:

if(window.location.hash) { 
   var thehash = window.location.hash;
   if (thehash !== "#search"){

      alert(thehash); // returns "#search"

      thehash = thehash.replace(/#/g, '/');
      window.location.replace("http://url.com/" + thehash + "/");
   }
}

为什么这仍然重定向包含#search

的URL您需要
警报
之后返回false
,这样它就不会运行您的其余函数

您需要
警报
之后返回false
,这样它就不会运行您的其余函数

无法复制。当URL片段为
#search
时,您的代码不会导致重定向。在Chrome v23中测试。此外,
没有定义哈希值。也许这是因为复制的摘录。@DavidMüller谢谢,现在修复它,对不起谢谢大家,我使用了@keune的建议,如果是真的,首先返回false,如果是false,则返回else。无法复制。当URL片段为
#search
时,您的代码不会导致重定向。在Chrome v23中测试。此外,
没有定义哈希值。也许这是因为复制了摘录。@DavidMüller谢谢,现在修复它,对不起谢谢大家,我使用了@keune的建议,如果是真的,首先返回false,如果是false,则返回false。谢谢,keune。我已经更新了代码,但仍然不起作用。我是不是在做你说错的事?谢谢你,基恩。我已经更新了我的代码,但仍然不起作用。我是不是在做你说错的事?谢谢