Форматирование интервалов

1. :formatI(patternOut, patternIn)

Описание синтаксиса

Форматирует длительность или интервал. Поддерживаются следующие форматы вывода:

  • human+ или human (удобны для человеко-читаемого отображения)
  • единицы: millisecond(s) (миллисекунды), second(s) (секунды), minute(s) (минуты), hour(s) (часы), year(s) (годы), month(s) (месяцы), week(s) (недели), day(s) (дни) (или их сокращения).

Параметры:

  • patternOut: формат вывода (например, 'second' или 'human+').
  • patternIn: необязательная входная единица (например, 'milliseconds' или 's').
Пример
2000:formatI('second')       // Выводит 2
2000:formatI('seconds')      // Выводит 2
2000:formatI('s')            // Выводит 2
3600000:formatI('minute')    // Выводит 60
3600000:formatI('hour')      // Выводит 1
2419200000:formatI('days')   // Выводит 28

// Отображение в человеко-читаемом виде:
2000:formatI('human')        // Выводит "a few seconds"
2000:formatI('human+')       // Выводит "in a few seconds"
-2000:formatI('human+')      // Выводит "a few seconds ago"

// Пример конвертации единиц:
60:formatI('ms', 'minute')   // Выводит 3600000
4:formatI('ms', 'weeks')      // Выводит 2419200000
'P1M':formatI('ms')          // Выводит 2628000000
'P1Y2M3DT4H5M6S':formatI('hour')  // Выводит 10296.085
Результат

На выходе отображается соответствующая длительность или интервал на основе входного значения и конвертации единиц.