- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
private function handleApplcationCallback(call:String, params:String = "") : void
{
var paramsArr:Array;
if(params)
paramsArr = params.length > 0 ? params.split(",") : [];
else
paramsArr = [];
try
{
handleApplicationCalls(call,paramsArr);
}
catch (error : Error)
{
}
}
Или, даже, ещё выше. Без всего кода толком не понятно.
Потому, что если специально null передать, то будет ошибка (он не заменится на ""). Хотя он никогда туда не передается, но это уже другой вопрос.
То что там try-catch без вариантов отследить ошибку, я к этому уже привык в этом проекте, просто механически удаляю. Но иногда полет мысли автора заставляет задуматься...
В любом случае, создавать лишнюю переменную - не айс, оба условия можно в if запихнуть, если так уж null'а опасаешься.
Это ещё не говнокод (ну разве что слегка хлюпает).
Кроме того расследование показало в итоге, что все-таки туда да передают нулл, при чем явно. Код писан методом последовательных приближений, в смысле человек не понимал, что делает и просто подставлял значения, так и родился этот и еще 90% кода в проекте который надо сейчас поддерживать... Т.е. по-чесному, этой функции не должно было быть, и той, которую она вызывает тоже... потому что человек решил сэкономить на 10 методах и вызвать их через рефлекшн, а когда не получилось - завернул все в try-catch... ну, я думаю, знакомая ситуация, все когда-то с такими деятелями сталкивались.