Я рефакторинг большого документа javascript, который я взял из проекта с открытым исходным кодом. В ряде функций используются несогласованные операторы return. Вот простой пример того, что я имею в виду:
var func = function(param) {
if (!param) {
return;
}
// do stuff
return true;
}
Иногда функции возвращают логические, иногда строки или другие вещи. Обычно они непоследовательны в сочетании с простым выражением return;
внутри условного выражения.
Проблема в том, что код является сложным. Это парсер, который использует множество уникальных совпадений RegEx, создает и уничтожает узлы DOM на лету и т.д. Предварительное тестирование показывает, что в приведенном выше примере я мог бы изменить оператор return;
, чтобы стать return false;
, но я Мне кажется, что я не могу понять, что это негативно повлияло (например, какая-то функция перестала работать) на script до намного позже.
Итак, мои вопросы: есть ли смысл использовать пустой оператор возврата? Может ли это быть преднамеренно закодировано таким образом или было просто лениво? Могу ли я изменить их все на return false;
или return null;
или мне нужно прорыть каждый звонок и узнать, что они делают с результатами этих функций?