Skip to content

Latest commit

 

History

History
25 lines (18 loc) · 1.44 KB

functionParameters.md

File metadata and controls

25 lines (18 loc) · 1.44 KB

Параметры функции

Если у вас есть функция, которая принимает слишком много параметров или параметров одного типа, вы можете подумать об изменении функции, чтобы взамен принимать объект.

Рассмотрим следующую функцию:

function foo(flagA: boolean, flagB: boolean) {
  // ваше потрясающее тело функции
}

С таким определением функции довольно легко вызвать ее неправильно, например foo(flagB, flagA), и компилятор вас никак не предупредит.

Вместо этого преобразуйте функцию для получения объекта:

function foo(config: {flagA: boolean, flagB: boolean}) {
  const {flagA, flagB} = config;
  // ваше потрясающее тело функции
}

Теперь вызовы функций будут выглядеть как foo({flagA, flagB}), что значительно упрощает обнаружение ошибок и проверку кода.

Примечание. Если ваша функция достаточно проста и вы пока не ожидаете её усложнений, не бойтесь игнорировать этот совет 🌹.