我有一个Javascript类,它使用提供给类的数据执行许多有效性检查。我试图找出创建validate()函数的最佳方法,该函数将返回一个错误或多个错误。一种方法是返回一组错误。另一种方法是将委托传递给函数,该函数会在发生任何错误时触发。另一种方法是创建一个在发生任何错误时将被触发的事件。在这3个中,哪个最适合我想要完成的任务?
返回一个数组会使接口变得有点复杂。另一方面,如果我使用委托或事件,那么委托函数/事件代码也可能有点复杂。
答案 0 :(得分:0)
如果我要成为您界面的用户,那么我希望能够订阅从对象中吐出的某些子集或错误级别。
例如,许多记录器都依据记录级别的概念(例如,详细,警告或错误)。您可以提供一个接口,您的对象实际记录/推送它遇到的每种错误类型的通知,但是您为每种类型的消息公开不同的回调。因此,您的用户将能够决定听什么。
要回答你的问题,我希望看到所有的错误,而不只是一个。我会说让他们继续,直到我取消订阅通知。