适当的内联尝试捕获

问题描述 投票:1回答:1

在Javascript(或大多数情况下,ECMAscript一般),这是最合适的方式来写这个?

try { ajax.abort() } catch(e) { console.error (e) }

or

try { ajax.abort(); } catch(e) { console.error (e); }

对于这种情况,似乎不需要分号,但同时我通常将其写在5行而不是1行,在这种情况下,我使用分号作为标准编程目的(eol)。

两者都有效,我相信两者都会验证,这在语义上是否正确?

javascript try-catch
1个回答
7
投票

它们在语义上是相同的,并且由于Automatic Semicolon Insertion,它们在语法上都是正确的。


这部分是意见:

我建议总是明确地编写必要的分号,而不是依赖于ASI。但即使你这样做,ASI也会咬你。经典的例子是:

function foo() {
    return
        "testing";
}

如果你调用foo,返回值将是undefined,而不是"testing",因为ASI开始并在;之后添加return。哎哟。

© www.soinside.com 2019 - 2024. All rights reserved.