gpt4 book ai didi

syntax - coffeescript try/catch 的简写

转载 作者:行者123 更新时间:2023-12-03 11:09:11 25 4
gpt4 key购买 nike

我有时会编写如下代码:

try doSomething()
catch e
handleError e

这不是漂亮干净的 CoffeeScript 代码应该是什么样子。

有没有办法写:
try doSomething()
catch e handleError e #<-- will not compile

这将在我的 try/catch 语句中节省大约 33% 的代码行;)

最佳答案

来自 https://github.com/jashkenas/coffeescript/issues/2413 的交叉发布:

FWIW,我发现你可以写

try
compute something
catch error
handle error
unless error?
handle success

这是可能的,因为 CS 将 catch 的变量放入子句进入周围的范围,这是 JS 不做的。甚至有人会争辩说 unless error?else更清晰(这不是 if 子句)和 continue (这不是一个循环)在那个位置。

坚持oneliners的人甚至可以写
try compute something catch error then handle error unless error? then handle success

这有点酷,有点不可读。

一个 finally子句必须放在 unless 之前, 当然。

关于syntax - coffeescript try/catch 的简写,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18427645/

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