Function parameters

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

Якщо у вас є функція, яка приймає занадто багато параметрів або параметрів того самого типу, тоді ви можете змінити функцію, щоб замість цього приймати об’єкт.

Розглянемо таку функцію:

function foo(flagA: boolean, flagB: boolean) {
  // тіло функції
}

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

Краще змінити функцію, щоб вона отримувала обʼєкт:

function foo(config: {flagA: boolean, flagB: boolean}) {
  const {flagA, flagB} = config;
  // тіло функції
}

Зараз виклик функції став таким foo({flagA, flagB}) що набогато краще для запобігання помилок та код-ревью.

Примітка: якщо ваша функція досить проста і ви не очікуєте великого відтоку, не соромтеся ігнорувати цю пораду 🌹.

Last updated