Javascript window.location使用导致连续循环

Javascript window.location使用导致连续循环,javascript,window.location,Javascript,Window.location,我试图在URL中附加一个基于特定条件的查询字符串。我遇到的问题是,以下代码导致页面连续循环: function taoExtendedIdleTime() { if (trackingJson.loginType === 'explicit') { var myURL = window.location; window.location = myURL + "&debugMode=true&setIdleTime=60000"; } } taoExt

我试图在URL中附加一个基于特定条件的查询字符串。我遇到的问题是,以下代码导致页面连续循环:

function taoExtendedIdleTime() {
  if (trackingJson.loginType === 'explicit') {
    var myURL = window.location;
    window.location = myURL + "&debugMode=true&setIdleTime=60000";
  } 
} 

taoExtendedIdleTime();
为了纠正这个问题,我尝试了以下方法,检查这个查询是否已经存在。如果没有,请添加:

function taoExtendedIdleTime() {
  if (trackingJson.loginType === 'explicit') {
    var myURL = window.location;
      if (myURL.indexOf("&debugMode=true&setIdleTime=60000") == -1) {
        window.location = myURL + "&debugMode=true&setIdleTime=60000";
      }
  } 
} 

taoExtendedIdleTime();
在我的开发环境中,这根本不会执行。当我将它添加到控制台时,我得到以下错误:uncaughttypeerror:myURL.indexOf不是一个函数,并且引用了这个代码段的第四行:if(myURL.indexOf…)

非常感谢您提供的任何帮助/指导

基于,
窗口。location
是一个
位置
对象(不是
字符串
),因此它没有
索引方法。不过,您可能对它的
search
属性感兴趣

或者,如果您想更干净,可能会有所帮助。

基于,
窗口。location
是一个
位置
对象(不是
字符串
),因此它没有
索引方法。不过,您可能对它的
search
属性感兴趣


或者,如果你想变得更干净,可能会有帮助。

因为你正在尝试获取一个对象。window.location将返回您的位置对象。您要查找的是
window.location.href
,它将返回当前位置的url

function taoExtendedIdleTime() {
   if (trackingJson.loginType === 'explicit') {
       var myURL = window.location.href;       
       window.location.href = myURL + "&debugMode=true&setIdleTime=60000";
} }
taoExtendedIdleTime();

因为你想得到一个物体。window.location将返回您的位置对象。您要查找的是
window.location.href
,它将返回当前位置的url

function taoExtendedIdleTime() {
   if (trackingJson.loginType === 'explicit') {
       var myURL = window.location.href;       
       window.location.href = myURL + "&debugMode=true&setIdleTime=60000";
} }
taoExtendedIdleTime();

您似乎正在重新加载页面,因为trackingJson.loginType始终是“显式”的,您介意包括trackingJson对象的构建方式吗?您似乎正在重新加载页面,因为trackingJson.loginType始终是“显式”的,您介意包括trackingJson对象的构建方式吗?单击“发送”太早了!事实上,我最终改变了它,但也从函数中删除了它,因为一位同事认为这是不必要的。一切正常!再次感谢!点击发送太早了!事实上,我最终改变了它,但也从函数中删除了它,因为一位同事认为这是不必要的。一切正常!再次感谢!