ради повышения производительности кода… ESLint сообщает: «Стрелочная функция имеет сложность 21. Максимально допустимое значение — 20» [closed]

ESLint сообщает о недопустимо высокой сложности. Я хочу знать, почему это слишком сложно? И что произойдет, если я просто разделю его на несколько функций — это производительность? Насколько я знаю, мы всегда должны писать минимизированный код, поэтому, если мы разделим его на несколько функций, он будет занимать больше места (бит) и больше времени выполнения?
И как лучше всего работать с этим фрагментом.

const getWeekType = (f, d, e) => {
  const y = moment(),
    a = moment(f),
    i = moment(d);
  if (d && f && i.diff(a, 'days') <= 8 && y.diff(a, 'days') < 8 && y.diff(a, 'days') >= 0) {
    return { weekNum: 0, dayNum: y.diff(a, 'days') };
  }
  if (f && y.diff(a, 'days') >= 0 && y.diff(a, 'days') < 8 && (!d || i.diff(a, 'days') > 8)) {
    return { weekNum: 1, dayNum: y.diff(a, 'days') };
  }
  if (d && !f && i.diff(y, 'days') >= 0 && i.diff(y, 'days') < 8) {
    return { weekNum: 2, dayNum: 6 - i.diff(y, 'days') };
  }
  if ((!f || y.diff(a, 'days') > 8) && (!d || i.diff(y, 'days') > 8)) {
    let d = y.diff(f ? a : moment(e), 'days');
    for (; d > 7; ) d -= 7;
    return { weekNum: 3, dayNum: d };
  }
};

0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *