Я делаю проверки на верхнем уровне. На нижнем уровне от
ошибок опечаток защищает JSDOC. На нижнем уровне таких элементарных ошибок, вроде некорректного типа, вообще не должно быть - их надо решать раньше.
;(function (__NAMESPACE__) {
/**
* floor - функция нижнего уровня. используется внутри
* @param {number} x
*/
function floor (x) {
return x | 0;
}
/**
* Функция верхнего уровня. Экспортируется\используется извне
*/
function format (x) {
var numeric = isFinite(x) ? x : parseInt(x);
if (!isFinite(numeric)) {
throw "x must be numeric"
}
numeric = floor(numeric)
// остальная логика. в number_format уже нет проверки аргумента на корректность, как и во floor
return number_format(numeric);
}
// экспорт.
__NAMESPACE__.format = format;
})(window.APP);
верхние и нижние уровни - это уровни внешний\внутренний, что-то типа того
Сообщение от Sweet
|
Мне не нравится, например, что jQuery, когда ничего не находит, возвращает пустую коллекцию.
|
плюсую. это суть JS - стандартная библиотека редко кидает исключения.. легче ведь просто null вернуть и всё в шоколаде
В вот в
Yii за любую оплошность - по рукам. Ну хз, кому как удобнее. Легче с исключениями, конечно