Deno 是一种安全的 JavaScript/TypeScript 运行时环境,它提供了一种简单但强大的机制来处理可能会出现的错误和异常。本文将深入讨论这些机制,并为初学者提供指导。
异常处理
在 Deno 中,处理异常很简单。如果任何被运行的代码块中出现了异常,Deno 运行时就会立即停止整个程序,并输出异常信息。
-- -------------------- ---- ------- -------- ------------ - ----- --- ------------ --------- ---- --------- - --- - ------------- - ----- ------- - --------------------- ------------------- -
在上面的示例代码中,我们定义了一个 throwError
函数,用于抛出一个自定义的错误。然后,我们用 try-catch
语句来包裹调用 throwError
函数,以便能够在控制台中输出错误信息。在这里,我们将 error
对象的 message
属性打印出来,以显示异常消息。
Promise 异常处理
在 Deno 中,处理 Promise 异常也是非常常见的情况。和普通的异常处理一样,你可以使用 async/await
或 .then().catch()
来解决。
async/await
-- -------------------- ---- ------- ----- -------- --------------- - ----- --- ------------ --------- ---- --------- - ----- -------- ------ - --- - ----- ---------------- - ----- ------- - --------------------- ------------------- - - -------
在上面的示例代码中,我们定义了一个 asyncFunction
函数,用于抛出一个自定义的错误。然后,我们用 try-catch
语句来包裹调用 asyncFunction
函数,以便能够在控制台中输出错误信息。与普通函数不同的是,我们需要使用 await
关键字来等待异步函数的结果。
.then().catch()
-- -------------------- ---- ------- -------- ----------------- - ------ --- ----------------- ------- -- - ---------- ------------ --------- ---- ---------- --- - ----------------- -------- -- - -------------------- -------- --------------- -- -------------- -- - --------------------- ------------------- ---
在上面的示例代码中,我们定义了一个 promiseFunction
函数,它返回一个 Promise 对象,并在其中 reject 了一个自定义的错误。然后,我们使用 .then().catch()
来处理 Promise 的执行结果。与 async/await
不同的是,我们使用了 .then()
方法来捕获 Promise 的成功回调,用 .catch()
方法来捕获 Promise 的错误回调。
错误处理
在 Deno 中,错误处理是指我们可以在程序中捕获到一个错误,但仍需要程序继续运行的情况。在这种情况下,我们可以使用 console.error()
方法来输出错误信息,并继续执行程序。
-- -------------------- ---- ------- -------- --------------------- ------ - ----- - -- ------- --- ----- - --------------------- -- ------ --------- ------- - ---- - -------------------- ------------ - - -------------------- --------------------- ---------
在上面的示例代码中,我们定义了一个 processResult
函数,它用于处理异步操作返回的结果。如果返回结果是 null
,我们就输出错误信息,否则输出结果。这里我们使用了 console.error()
来输出错误信息。
总结
在 Deno 中处理错误和异常是一个必不可少的技能。无论是处理普通函数还是处理 Promise,我们都可以使用 try-catch
或 async/await
、.then().catch()
来处理异常。而对于错误处理,我们可以使用 console.error()
方法来输出错误信息,并继续执行程序。有了这些技能,我们可以更加熟练地开发 Deno 应用程序。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64a0c68a48841e9894d0ffb1