Tôi có một số hàm trả về một cái gì đó hoặc tạo ra một lỗi. Trong một hàm chính, tôi gọi từng hàm này và muốn trả về giá trị được trả về bởi mỗi hàm hoặc chuyển sang hàm thứ hai nếu các hàm đầu tiên gặp lỗi.
Vì vậy, về cơ bản những gì tôi hiện có là:
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
}
Nhưng thực ra tôi chỉ try
muốn trả lại nó (tức là nếu nó không gặp lỗi). Tôi không cần catch
khối. Tuy nhiên, mã như try {}
không thành công vì nó thiếu một catch {}
khối (không sử dụng) .
Tôi đặt một ví dụ trên jsFiddle .
Vì vậy, có cách nào để catch
loại bỏ các khối đó trong khi vẫn đạt được hiệu quả tương tự?
null
và bạn làm điều gì đó giống nhưreturn func1() || func2() || func3();