是否存在檢查代碼中的所有參數和其他條件,如果我知道,我從來沒有通過錯誤的參數,它應該工作正常(說我已經做了一些檢查之外的代碼)。在內部使用的代碼中製作額外的代碼是否是一種好的做法?
例子:
驗證碼:
/**
* Applies function to all elements of array in specified
* context.
* If array is empty, returns null.
*/
MyNameSpace.foreach = function(arr, callback, context) {
if (!(arr instanceof Array)) {
throw new Error('first argument is not an array');
}
if (typeof callback !== 'function') {
throw new Error('callback is not a function');
}
if (typeof arr.length === 'undefined') {
throw new Error('Length undefined');
}
var con = typeof context === 'object' ? context : window;
var i = arr.length;
if (i <= 0) {
return null;
}
for (j = 0; j < i; j++) {
callback.call(con, j, arr[j]);
}
}
可能是:
MyNameSpace.foreach = function(arr, callback, context) {
var con = typeof context === 'object' ? context : window;
var i = arr.length;
if (i <= 0) {
return null;
}
for (j = 0; j < i; j++) {
callback.call(con, j, arr[j]);
}
}