我如何退出JavaScript脚本,就像PHP的退出或死亡?我知道这不是最好的编程实践,但我需要这样做。
当前回答
放置调试器;关键字,在你想要停止执行的JavaScript代码。然后打开您喜欢的浏览器的开发人员工具并重新加载页面。现在它应该自动暂停。打开工具的Sources部分:调试器;关键字高亮显示,您可以选择恢复脚本执行。
我希望这能有所帮助。
更多信息请浏览:
https://developer.mozilla.org/de/docs/Tools/Debugger http://www.w3schools.com/js/js_debugging.asp
其他回答
我使用这段代码来停止执行:
throw new FatalError("!! Stop JS !!");
虽然你会得到一个控制台错误,但这对我来说很好。
这段代码将停止当前窗口中所有javascript的执行:
(,);
例子
console.log('READY!'); setTimeout(()=>{ /* animation call */ div.className = "anim"; console.log('SET!'); setTimeout(()=>{ setTimeout(()=>{ console.log('this code will never be executed'); },1000); console.log('GO!'); /* BOMB */ for(;;); console.log('this code will never be executed'); },1000); },1000); #div { position: fixed; height: 1rem; width: 1rem; left: 0rem; top: 0rem; transition: all 5s; background: red; } /* this <div> will never reached the right bottom corner */ #div.anim { left: calc(100vw - 1rem); top: calc(100vh - 1rem); } <div id="div"></div>
在我的例子中,我使用window.stop。
window.stop()在当前浏览上下文中停止进一步的资源加载,相当于浏览器中的'stop'按钮。 由于脚本的执行方式不同,此方法不能中断其父文档的加载,但它将停止其父文档的图像、新窗口和其他仍在加载的对象。 用法:window.stop (); (源)
Javascript可以在devtools中禁用:ctrl+shift+j跟随cltf+shift+p,然后输入disable Javascript
上述可能的选项:
window.stop(); // equivalent to the 'stop' button in the browser
debugger; // debugs
for(;;); // crashes your browser
window.location.reload(); // reloads current page
如果页面已加载,而你不想调试崩溃或重新加载:
throw new Error();
此外,清除所有超时
var id = window.setTimeout(function() {}, 0);
while (id--) {
window.clearTimeout(id);
}
中止DOM - XMLHttpRequest
$.xhrPool = [];
$.xhrPool.abortAll = function() {
$(this).each(function(i, jqXHR) {
jqXHR.abort();
$.xhrPool.splice(i, 1);
});
}
$.ajaxSetup({
beforeSend: function(jqXHR) { $.xhrPool.push(jqXHR); },
complete: function(jqXHR) {
var i = $.xhrPool.indexOf(jqXHR);
if (i > -1) $.xhrPool.splice(i, 1);
}
});
删除所有事件监听器,包括内联监听器
$("*").prop("onclick", null).off();
这将删除脚本并重新创建没有事件的元素
$('script').remove();
$('*').each(function(){
$(this).replaceWith($(this).clone());
});
如果网页上没有jQuery,则复制粘贴源代码到控制台。
可能还有其他的东西。请在评论中告诉我。
我想这个问题已经有答案了,点击这里了解更多信息。下面是它发布的简短答案。
throw new Error("Stop script");
您也可以使用您的浏览器添加断点,每个浏览器都是类似的,检查以下信息为您的浏览器。
为Chrome断点信息点击这里 有关Firefox断点信息,请点击这里 有关资源管理器断点信息,请单击 有关Safari断点信息,请点击这里