草庐IT

Try-Catch

全部标签

javascript - catch block 中的 return 语句发生了什么

我已经在javascript中尝试过这段代码functionabc(){try{console.log(0);throw"isempty";}catch(err){console.log(1);returntrue;}finally{returnfalse;}return(4);}console.log(abc());我得到的输出是错误的。我明白Finally总是执行,不管trycatch的结果如何,但是catch中的return语句会发生什么。 最佳答案 IunderstandFinallyalwaysexecuteregardl

javascript - 条件 catch 子句 - 浏览器支持

哪些浏览器支持条件捕获子句?在MDN上try...catch你可以找到Conditionalcatchclauses作为非标准功能。try{myroutine();//maythrowthreeexceptions}catch(eifeinstanceofTypeError){//statementstohandleTypeErrorexceptions}catch(eifeinstanceofRangeError){//statementstohandleRangeErrorexceptions}catch(eifeinstanceofEvalError){//statementst

javascript - 捕获 SyntaxError 并运行替代函数

我正在尝试在javascript上构建一些东西,我可以有一个可以是一切的输入比如string,xml,javascriptand(non-javascriptstringwithoutquotes)如下://stringseval("'helloIamastring'");/*notethefollowingproperquotemarks*///xmleval(HelloIamaXMLdoc);//javascripteval("varhello=2+2;");因此前3个运行良好,因为它们是简单的javascriptnative格式但是当我尝试在javascript中使用它时//pl

javascript - 我可以在不指定 catch 参数/标识符的情况下在 JavaScript 中使用 try/catch 吗?

我想知道是否有一种方法可以在执行JStry/catch时不指定参数。不过,每次我尝试这样做时,try/catch都不起作用。工作版本:try{//Breakingcode}catch(e){//Nothinghappenshere}我的想法(没有'e'):try{//Breakingcode}catch(){//Nothinghappenshere} 最佳答案 2019年可选的catch绑定(bind)节点.js在Node.js中,此功能称为OptionalCatchBinding,自Node.js版本10.3起受支持,请参阅htt

Javascript:如何捕获导航到使用 window.location.href = url 的页面上的错误

我正在使用REST服务生成一个CSV文件,我想提示用户下载该文件。该服务的示例如下:https://localhost:8444/websvc/exportCSV?viewId=93282392为了提示用户下载文件,我使用了这段代码:window.location.href=exportUrl,其中exportUrl将是一个类似于上面的URL。如果在执行服务时服务器上没有错误,这将非常有用。出现文件下载提示,页面不刷新,一切正常。但是,如果是错误,我会得到一个令人讨厌的HTTPStatus500页面,这对用户体验不利。我想做的是捕获结果页面上的任何错误,并在不离开当前页面的情况下抛出一

javascript - 在 JavaScript 中使用 try-catch

在JavaScript中使用try/catch有多耗时?我有一个应用程序,我在一个被调用数百次的函数中使用它。现在我担心try/catch语句花费了太多时间,应用程序将花费比没有它更长的时间。 最佳答案 jsPref上有一些不错的测试:http://jsperf.com/try-catch-performance-overheadhttp://jsperf.com/try-catch-versus-massive-ifhttp://jsperf.com/try-catch-002结论:在主流浏览器上,几乎没有差异。

javascript - onrejected 与 Promise 中的 catch

这个问题在这里已经有了答案:Promise:thenvsthen+catch[duplicate](1个回答)关闭7年前。ES6Promise中的catch和then(_,onRejected)有什么区别?我只知道onRejected不处理内部Promise的拒绝状态。Promise.resolve().then(()=>{returnnewPromise((resolve,reject)=>{thrownewError('Erroroccurs');});},er=>console.log(er));//Chromethrows`Uncaught(inpromise)`Promise

javascript - 如何创建 JavaScript "Try It Yourself"编辑器

我知道有很多“自己试一试”的JavaScript编辑器,比如W3School'sTryIteditor,JSBin,和JSFiddle.我正在开发一个图形JavaScript库,我想让人们在我自己的网站上试用(与其他编辑器的一个区别是我的输出是Canvas,而不是HTML框架)。不想重新发明轮子,是否有既定的方法来创建考虑基于DOM的脚本漏洞等问题的“自己尝试”功能? 最佳答案 一个简单的设计是一个带有form的起始页,其中包含三个textarea和一个iframe。textarea包含html/css和javascript部分,i

javascript - Try/catch oneliner 可用吗?

正如您可以转换以下内容:vart;if(foo=="bar"){t="a";}else{t="b";}进入:t=foo=="bar"?"a":"b";,我想知道是否有简写/单行方式来转换它:vart;try{t=someFunc();}catch(e){t=somethingElse;}是否有一种速记方式(最好是oneliner)来完成此操作?当然,我可以只删除换行符,但我的意思是像?:if的事情。谢谢。 最佳答案 您可以使用以下函数,然后用它来联结您的try/catch。它的使用会受到限制,并且会使代码更难维护,所以我永远不会使用

javascript - AngularJS 抛出未知提供者 : $scopeProvider <- $scope error when I try to use modules

我刚开始使用AngularJS以下代码在控制台中给出错误。未知提供者:$scopeProvidervarapp;(function(angular){app=angular.module('OrdersDashboard',[]);app.config(['$routeProvider',function($routeProvider){$routeProvider.when('/current/new',{templateUrl:'orders/partials/new_current',controller:'newActiveOrdersCtrl'}).otherwise({re