@madc0de

Почему ошибка каррирования в функции typescript?

Нужно сделать коррирование с данным типом. Не пойму в чем может быть проблема.

Ссылка
type Fn = (val?: number) => number | Fn;

const add = (val: number = 0): number | Fn => {
  let sum = 0;
  const curried = (b: number) => {
    sum = sum + b
    return curried;
  };
  curried.valueOf = () => sum;
  curried.toString = () => sum;
  return curried(val) as number | Fn;
};
console.log(add()) // => 0
console.log(add(1)(2)(3)) // => 6
  • Вопрос задан
  • 194 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы