是否有一种“最佳实践”方式,如何使用此函数抛出错误的信息在TypeScript中标记函数?
在Java中,人们会用“throws XYError”来注释函数的签名。这不适用于TypeScript。
我知道代码不需要运行,但就我而言,当函数签名已经告诉我这些信息时它是更干净的代码。
对于你们如何处理这种情况的任何合理的提示都表示赞赏。
答案 0 :(得分:-2)
您的函数应返回Promise。这是表示异步操作最终完成或失败的自然方式。
这仅适用于异步功能。在我看来,最好的做法是不要从同步函数中抛出异常。
访问文件,数据库,网络服务 - 这些应该是异步的
参数超出范围 - 传统上这不是javascript中的错误:pop()
从空数组返回undefined
,substring()
无效范围返回空字符串,这个IMO是一件好事 - 它会在调用者中产生更清晰的代码
参数为null - 使用--strictNullChecks
编译,然后您可以依赖调用者永远不会传递null
堆栈溢出,内存不足 - 这些都没有显式抛出,声明它们没有意义,因为任何函数都可能抛出它们(在Java中,这些是运行时异常,也不会被检查)
还有什么可以保证从同步功能中抛出异常吗?如果是的话,我认为在语言中得到明确的支持是非常罕见的。