2014-02-13 32 views
4

在继续之前检查一个函数的参数是否矫枉过正?什么时候检查一个函数的参数是否过分矫枉过正?

E.g.

var doFoo = function(id, message){ 
    // Are these asserts overkill? 
    goog.asserts.assertNumber(id, "Expecting a numeric id."); 
    goog.asserts.assertString(message, "Expecting a string."); 

    // Do more stuff here 
} 

注:这是使用封库的断言语句,但任何类似的逻辑可以使用任何库或没有图书馆可言,你的想法。

编辑:我想这个问题是主观的。更好的问题是... 什么时候检查函数的参数是否过量?我想。

回答

0

取决于你的东西是多么安全。但在大多数情况下没有。当直接写入数据库时​​它确实没有矫枉过正(但是这个检查应该是服务器站点)。不应该有任何可信赖的客户端代码,所以当你将它与服务器一起使用时,其过度矫枉过正,因为检查是服务器端

+0

谢谢。虽然我已经更新了这个问题,但是让它不太可能得到'取决于'的答案。 – Ally

相关问题