是否有可能停止 JavaScript 执行?
2022-08-29 23:41:52
简短的回答:
throw new Error("Something went badly wrong!");
如果您想了解更多信息,请继续阅读。
代码中的表达式将停止页面执行,然后浏览器的开发人员工具将允许您查看页面被冻结时的状态。debugger;
与其尝试停止所有内容,不如让代码处理错误。通过谷歌搜索阅读有关s的信息。它们是一种聪明的方法,可以让您的代码“跳转到”错误处理过程,而无需使用繁琐的if/else块。Exception
在阅读了它们之后,如果您认为中断整个代码绝对是唯一的选择,那么抛出一个除了在应用程序的“根”作用域之外的任何地方都不会被“捕获”的异常是解决方案:
// 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!");
确保你没有捕获任何异常的 catch()
块;在这种情况下,修改它们以重新抛出你的 “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) 请求,您可以使用该方法(在 jQuery 中也可用)。xhrObj.abort()
你可以做一个JavaScript拼写错误:D(在这里跳出框框思考)
thisFunctionDoesNotExistAndWasCreatedWithTheOnlyPurposeOfStopJavascriptExecutionOfAllTypesIncludingCatchAndAnyArbitraryWeirdScenario();
或者类似的东西:
new new