gpt4 book ai didi

javascript - 是否可以停止 JavaScript 执行?

转载 作者:IT老高 更新时间:2023-10-28 13:12:00 27 4
gpt4 key购买 nike

是否有可能以某种方式停止或终止JavaScript以某种方式阻止任何进一步的基于 JavaScript 的执行,而无需重新加载浏览器?

我正在考虑 PHP 中 exit() 的 JavaScript 等价物。

最佳答案

简答:

throw new Error("Something went badly wrong!");

如果您想了解更多,请继续阅读。


您想停止 JavaScript 的执行以进行开发/调试吗?

代码中的表达式 debugger; 将停止页面执行,然后浏览器的开发人员工具将允许您查看页面卡住时的状态。

你想随意地停止你的应用程序吗?

出错了?

与其试图停止一切,不如让您的代码处理错误。通过谷歌搜索了解Exception。它们是一种让您的代码“跳转”到错误处理过程而无需使用繁琐的 if/else block 的聪明方法。

在阅读了它们之后,如果您认为中断整个代码绝对是唯一的选择,那么抛出一个不会在任何地方“捕获”的异常(除了在应用程序的“根”范围内)就是解决方案:

// creates a new exception type:
function FatalError(){ Error.apply(this, arguments); this.name = "FatalError"; }
FatalError.prototype = Object.create(Error.prototype);

// and then, use this to trigger the error:
throw new FatalError("Something went badly wrong!");

确保您没有捕获 any 异常的 catch() block ;在这种情况下,修改它们以重新抛出您的 "FatalError" 异常:

catch(exc){ if(exc instanceof FatalError) throw exc; else /* current code here */ }

当任务完成或任意事件发生时?

return; 将终止当前函数的执行流程。

if(someEventHappened) return; // Will prevent subsequent code from being executed
alert("This alert will never be shown.");

注意:return; 仅在函数内有效。

在这两种情况下...

...您可能还想知道如何停止异步代码。使用 clearTimeout 完成和 clearInterval .最后,停止XHR ( Ajax ) 请求,您可以使用 xhrObj.abort() 方法(jQuery 中也可以使用)。

关于javascript - 是否可以停止 JavaScript 执行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9298839/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com