gpt4 book ai didi

function - TypeScript 中错误抛出函数的签名

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

是否存在一种“最佳实践”方式,可以让人们在 TypeScript 中使用该函数抛出错误的信息来标记该函数?

在 Java 中,人们会用“throws XYError”来注释函数的签名。这不适用于 TypeScript。

我知道运行代码不需要它,但就我而言,当函数签名已经告诉我此类信息时,它是更清晰的代码。

对于你们如何处理这种情况的任何合理提示,我们表示赞赏。

最佳答案

你的函数应该返回一个 Promise .这是表示异步操作最终完成或失败的自然方式。

这仅适用于异步函数。在我看来,最好的做法是根本不要从同步函数中抛出异常。

  • 访问文件、数据库、网络服务 - 这些应该是异步的

  • 参数超出范围 - 这在传统上不是 javascript 中的错误:pop() 从空数组返回 undefined, substring() 无效范围返回空字符串,这是 IMO 的好事 - 它会导致调用者的代码更清晰

  • 参数为 null - 使用 --strictNullChecks 进行编译,然后您可以依赖调用者永远不会传递 null

  • 堆栈溢出,内存不足 - 这些都不会被显式抛出,声明它们没有意义,因为任何函数都可能抛出它们(在 Java 中,这些是运行时异常,也不会被检查)

还有什么可以保证从同步函数中抛出异常吗?如果是,我认为在该语言中有明确的支持就太罕见了。

关于function - TypeScript 中错误抛出函数的签名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44780539/

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