Если у вас есть функция, которая принимает слишком много параметров или параметров одного типа, вы можете подумать об изменении функции, чтобы взамен принимать объект.
Рассмотрим следующую функцию:
function foo(flagA: boolean, flagB: boolean) {
// ваше потрясающее тело функции
}
С таким определением функции довольно легко вызвать ее неправильно, например foo(flagB, flagA)
, и компилятор вас никак не предупредит.
Вместо этого преобразуйте функцию для получения объекта:
function foo(config: {flagA: boolean, flagB: boolean}) {
const {flagA, flagB} = config;
// ваше потрясающее тело функции
}
Теперь вызовы функций будут выглядеть как foo({flagA, flagB})
, что значительно упрощает обнаружение ошибок и проверку кода.
Примечание. Если ваша функция достаточно проста и вы пока не ожидаете её усложнений, не бойтесь игнорировать этот совет 🌹.