Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么我的javascript循环不是';我的chrome浏览器崩溃了吗?_Javascript_Google Chrome_Console - Fatal编程技术网

为什么我的javascript循环不是';我的chrome浏览器崩溃了吗?

为什么我的javascript循环不是';我的chrome浏览器崩溃了吗?,javascript,google-chrome,console,Javascript,Google Chrome,Console,更新 我为我的浏览器控制台制作了这个javascript脚本,并添加了一个循环: var available = false; while (available === false){ setTimeout(function(){ document.getElementById('CONTENU_WIN').contentWindow.location.reload() setTimeout(function(){ var butt

更新

我为我的浏览器控制台制作了这个javascript脚本,并添加了一个循环:

var available = false;
while (available === false){
    setTimeout(function(){
        document.getElementById('CONTENU_WIN').contentWindow.location.reload()
        setTimeout(function(){
            var button = document.getElementById('CONTENU_WIN').contentWindow.document.getElementById('boutonSuivant');
            button.click();
            setTimeout(function(){
                // Get value of span text
                var span_Text = document.getElementById('CONTENU_WIN').contentWindow.document.getElementById("compTableau_tbody").innerText;
                console.log(span_Text)
                if (span_Text == "No available appointment") {
                  console.log("NONNNNN");
                } else {
                    // If "No available appointment." not detected, it means that turnos are available. 
                    // Make a sound
                    var typeWriter = new Audio("http://soundbible.com/mp3/School_Fire_Alarm-Cullen_Card-202875844.mp3");
                    typeWriter.play()
                    // Date & Time instance
                    var ts = new Date();
                    console.log(ts.toString());
                    setTimeout(function(){
                        console.log("WAITING FOR YOUR TO TAKE THE TURNO!!!!")
                        }, 200000);
                    available = true;
                    console.log(available);
                }
            }, 5000);
        }, 10000);
    }, 10000);
}
我的目标是执行第一个“if”语句,直到它不能执行为止,然后转到else(var available=true;) 但是这个循环使我的浏览器崩溃。我测试了不同的循环和不同的东西: -做/当 -而假/真 -为了 -设定间隔 - ... 但我不明白为什么。也许我还是不太适应循环

有人能帮我吗?
谢谢

我认为您正在重新分配变量的范围
可用
。可用的var=真;在您的函数中有第二个分配的变量,该变量仅在函数中可用。

只需执行
available=true
(不带var),而不是重新声明它。我更新了它,它仍然是crashsetTimeout,而不是sleep方法。循环不断地运行,并产生更多的超时。异步101。@科林,你的代码中有一个逻辑错误<代码>可用变量在超过10秒后最终将变为真,因为所有这些
设置超时
。在这段时间里,while循环一次又一次地执行,只是让内存过载。那我还能用别的方法吗?嗨!我现在编辑了这个部分,但它在启动函数后仍然崩溃