JavaScript 中可以尝试 {} 而不使用 catch {} 吗?

2024-01-08

我有许多函数,它们要么返回某些内容,要么抛出错误。在主函数中,我调用其中的每一个函数,并希望返回每个函数返回的值,或者如果第一个函数抛出错误,则继续执行第二个函数。

所以基本上我目前拥有的是:

function testAll() {
    try { return func1(); } catch(e) {}
    try { return func2(); } catch(e) {} // If func1 throws error, try func2
    try { return func3(); } catch(e) {} // If func2 throws error, try func3
}

但实际上我只想try返回它(即如果它不抛出错误)。我不需要catch堵塞。然而,像这样的代码try {}失败,因为它缺少(未使用的)catch {} block.

I put jsFiddle 上的示例 http://jsfiddle.net/7WmXF/.

那么,有什么办法可以让这些catch移除方块同时达到相同的效果?


A try没有catch子句将其错误发送给下一个更高的子句catch或窗口(如果该 try 中没有定义 catch)。

如果您没有catch,一个 try 表达式需要一个finally clause.

try {
    // whatever;
} finally {
    // always runs
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JavaScript 中可以尝试 {} 而不使用 catch {} 吗? 的相关文章

  • 如何将中间件绑定到socket.io中的事件

    现在您可以将中间件绑定到io use middleware 但这仅在建立套接字连接时触发 有没有办法在将其传递给事件句柄之前拦截它 就像在expressjs中一样 换句话说 In 快递 js你可以做 app get middleware1
  • 计算Javascript中两次点击之间的时间

    我想用 javascript 计算属性的两次点击之间的时间 但我不知道如何 例如 a href click here a 如果用户单击多次 假设 5 秒内 我想显示警报 如果有帮助的话我正在使用 jQuery 我对 javascript 不
  • 在 BIRT 中输入参数后更新数据集查询

    在 BIRT 报告设计中传递参数后 如何更改或更新数据集的查询 详细说明 我有一个如下所示的查询 WHERE 该参数标记可以保存不同的值 在用户输入参数后 它看起来像这样 例如 WHERE column name 1 or WHERE co
  • 将音频与视频流合并 Node.js

    我正在创建 YouTube 视频下载器并且正在使用ytdl core库 它无法下载带有音频的高质量视频 因为 youtube 将其放在另一个文件中 但我需要将其全部下载到一个文件中 我已经这样做了 app get download asyn
  • 如何记录返回的事件发射器

    如何记录所发出的事件stream返回于MyFunc 与 JSDoc MyFunc description param Object opts description return Stream description function My
  • java 中的 Try-with-resources 和 return 语句

    我想知道是否放一个return里面的声明尝试资源block 防止资源自动关闭 try Connection conn return conn createStatement execute 如果我写这样的东西将会联系被关闭 Oracle 文
  • 如何使用 jQuery 向表中添加新行,并为其分配递增的 id

    我有一个现有的 HTML 表格 它是用户输入 GPS 点的表单的一部分 用户还可以选择上传 GPS 数据点 我想要一个用户可以按下的按钮 其中一些 Javascript 会向表中添加一个或多个新行 但新行必须继续增加表中使用的名称和 id
  • Aptana Studio 3 上的预览选项卡在哪里?

    我在 Windows PC 上使用 Aptana Studio 2 并有一个选项卡用于在 IE 上预览页面 另一个选项卡用于在 Firefox 上预览 但我切换到了 Aptana 3 我不知道是没有预览还是我没有找到它 是的 我在 stac
  • jQuery 选择器:为什么 $("#id").find("p") 比 $("#id p") 更快

    该页面的作者 http 24ways org 2011 your jquery now with less suck http 24ways org 2011 your jquery now with less suck断言 jQuery
  • 如何从顺序键盘导航中删除 Vuetify 附加图标

    在带有 Vuetify 的 Vue js 应用程序中 我有一组用v text field并且其中有一个append icon为了切换文本可见性 如下所示
  • 使水平滚动条始终可见,即使底部不在视图中

    我将用一个片段来开始这个问题 该片段几乎显示了我想要完成的任务 wrapper overflow hidden display flex sidebar min width 200px background 333 color FFF co
  • 选中复选框时提交表单

    有没有办法在选中复选框时提交表单
  • 如何在 e2e AngularJS 测试中进行文件上传?

    在我的一种观点中 我有一个文件上传控件 它支持通过拖放或单击按钮后打开的标准文件对话框上传文件 How to do this in my e2e tests1 1 Just one of the two options will be en
  • Jquery,清除/清空 tbody 元素的所有内容?

    我认为这会相当简单 但似乎空方法无法清除我拥有的 tbody 如果有人知道执行此操作的正确方法 我将不胜感激 我只想删除 tbody 中包含的所有内容 到目前为止我正在尝试 tbodyid empty HTML table tbody tr
  • 从多维无穷大数组中删除数组元素

    我想删除一个特定元素 例如 我想删除元素id 76在下面的数组中 而且 数组可以无限地组合在一起 这里的问题是我无法刷新页面 因为我使用 Vue js 进行即时操作 如果我能做到这一点 我的下一个问题可能是如何在我现在想要的地方添加一个元素
  • ES6 模板文字的延迟执行

    我正在玩新的ES6 模板文字 http tc39wiki calculist org es6 template strings 我首先想到的是String format对于 JavaScript 所以我开始实现一个原型 String pro
  • 您如何看待引导模式触发器的相应回调?

    On 引导模态 http getbootstrap com javascript modals 我们知道我们可以为触发器绑定事件 例如show or hide using show shown hide hidden 但此事件绑定仅适用于一
  • 在javascript中动态生成行?

    我是 javascript 新手 我想在按下 Tab 时动态生成行 并希望获取在动态生成的行中输入的值 以便我可以在 servlet 代码中使用这些值 这是我的html
  • Restangular - _.contains() 不是一个函数

    如果您最近通过 Bower 更新了 Restangular 它将安装最新的 Lodash 新的 4 0 然而 这是一个问题 因为 Restangular Angular 现在会抛出错误 contains 不是函数 你怎么解决 解决方案非常简
  • 在 javascript 中使用 xPath 解析具有默认命名空间的 XML

    我需要创建一个 XML xPath 解析器 所有解析都必须在客户端进行 使用 JavaScript 我创建了一个 javascript 来执行此操作 在默认名称空间发挥作用之前 一切看起来都正常 我根本无法查询具有默认命名空间的 XML 我

随机推荐

  • 打字稿“不是索引器的子类型”,是什么意思?

    我正在通过阅读来学习 Typescript这份官方文件 https www typescriptlang org docs handbook interfaces html关于索引器类型 我无法理解这段代码 interface Number
  • 大范围连续整数的数据结构?

    假设内存中有大量连续整数 每个整数都属于一个类别 两个操作必须是 O log n 将范围从一个类别移动到另一个类别 以及查找给定范围的类别计数 我很确定只要第一个操作的正确实现 第二个操作就可以轻松解决 每个整数都从一个类别开始 因此我从一
  • 带凭证的 AngularJS

    我一直在开发一个 AngularJS 项目 该项目必须将 AJAX 调用发送到 Restfull Web 服务 该网络服务位于另一个域中 因此我必须在服务器上启用 cors 我通过设置这些标头来做到这一点 cresp getHttpHead
  • 在 bash 中仅杀死管道中的第一个进程

    如果我有一个长时间运行的命令定期输出一些数据 例如tail F我想用 awk 或其他东西 处理 tail F service log awk END print How to kill the first process only tail
  • 二进制响应内容,请求库

    我正在阅读有关请求库的文档 它似乎已经非常过时了 我一步一步尝试了其中显示的所有示例 并在尝试运行以下代码时遇到了问题 import requests from PIL import Image from StringIO import S
  • 现有 ASP.NET 4 解决方案中的高效 URL 屏蔽/伪装/隐藏

    我当前的系统使用 IIS 6 和 7 使用 ASP NET 和 NET 4 中的 C 编写 我的目的是完全隐藏网址 根据客户请求 IE https myapp it mydomain com Secure folder1 folder2 f
  • 正则表达式匹配 Perl 中字符串的第二次出现

    我正在尝试匹配 perl 中字符串的第一次和第二次出现 输入的前几行 包含在 intersect 中 是 gi 112807938 emb CU075707 1 Xenopus tropicalis finished cDNA clone
  • 无法打开活动:无法创建 Android 视图模型实例

    我正在创建一个应用程序来扫描条形码并使用 Android 视图模型和 LiveData 将该信息获取到房间数据库中 这是错误消息 java lang RuntimeException Unable to start activity Com
  • 将 Autofac 容器传递给 WPF UserControl

    我正在使用 autofac 来解析 WPF 应用程序中的视图和视图模型 IComponentContext 自动传递到视图中 一个例子 public BusinessAuto int proposedCoverageId IComponen
  • 如何从JSP下载附件文件

    我想知道如何根据内容配置从 JSP 页面下载任何文件依恋来自邮件服务器 我想在 JSP 页面上创建一个链接 通过单击该链接 用户可以从邮件服务器下载文件 该链接应该用于内容处置依恋类型 我怎样才能在 JSP 中做到这一点 不要为此使用 JS
  • Visual Studio 抱怨编译调试时找不到 .exe

    我有一个非常简单的 C 应用程序 include
  • Ruby 中的 Monad 等价物

    Ruby 中 monad 的等效构造是什么 精确的技术定义 在 Ruby 中 一个 monad 可以是任何带有以下内容的类 bind and self unit定义的方法使得对于所有实例 m m class unit a bind f f
  • 定制锂路由场景

    我的任务是用大量预先存在的链接目录重写现有网站 为了便于论证 我们假设我们无法执行任何会更改链接目录的操作 以下是我们正在使用的链接结构的一些示例 项目页面将是 www domain com widgets some totally awe
  • 为什么java语句评估会发生这样的情况?

    int z 1 System out println z z System out println z z 输出将是 false true 我不明白为什么 请向我解释一下 的操作数 从左到右评估 http docs oracle com j
  • 下拉列表依赖于另一个下拉列表 tkinter

    我有一个包含汽车品牌的列表 还有第二个包含这些品牌的型号名称的列表 我想要两个下拉列表 首先 您选择品牌 然后在第二个下拉列表中选择型号 但仅限于所选品牌的型号 我得到以下代码 import tkinter as tk brands Bug
  • 具有类实例集合的 For-each 循环,多次处置警告

    这段代码 Private Sub assignButtons ByVal Buttons As Collection ByVal ToolButton As String ByVal nToolButtons As Integer For
  • 将我的付费应用的所有用户迁移到应用内购买

    实际上 我有 2 个应用程序 免费和付费 专业版 我想将我的 2 个应用程序迁移到具有应用程序内购买功能的免费应用程序 我可以保存所有在我的应用内购买中支付专业版费用的人吗 最好的方法是什么 这必须逻辑地处理 1 只需为所有人 推出App的
  • Firefox 5、6、7 和 XULRunner:分别是哪个版本?

    现在测试版已经发布 我正在尝试重新编译一个 Firefox 扩展 该扩展具有可与 Firefox 5 一起使用的二进制组件 根据this https developer mozilla org en Firefox 5 for develo
  • 如何检查十六进制颜色是否“太黑”?

    我正在尝试评估颜色选择器选择的颜色的暗度 看看它是否 太黑 如果是 则将其设置为白色 我想我可以使用十六进制值的第一个字符来实现这一点 它正在工作 但它也在切换一些合法的 浅 颜色 我有以下代码 if lightcolor substrin
  • JavaScript 中可以尝试 {} 而不使用 catch {} 吗?

    我有许多函数 它们要么返回某些内容 要么抛出错误 在主函数中 我调用其中的每一个函数 并希望返回每个函数返回的值 或者如果第一个函数抛出错误 则继续执行第二个函数 所以基本上我目前拥有的是 function testAll try retu