1. ホーム
  2. javascript

[解決済み] try {} without catch {} はJavaScriptで可能ですか?

2022-04-27 17:58:13

質問

何かを返すか、エラーを投げる関数がいくつもあります。メイン関数の中で、これらの関数をそれぞれ呼び出し、それぞれの関数が返した値を返すか、最初の関数がエラーをスローした場合は2番目の関数に進むようにしたいのです。

つまり、基本的に私が現在持っているものは、次のようなものです。

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 {} ブロックを作成します。

を置いた。 jsFiddleでの例 .

では、これらの catch のブロックは削除され、同じ効果が得られるのでしょうか?

解決方法は?

いいえ、そのままにしておいてください。

エラーは黙って無視されるべきではないので、これは実際に理にかなっています。