Календарные утилиты для работы с датами, високосными годами и разницей между значениями времени.
- Description:
Календарные утилиты для работы с датами, високосными годами и разницей между значениями времени.
- Source:
Methods
(static) addByCalendarUnit(timestamp, amount, unit) → {number}
- Description:
Возвращает новый timestamp, увеличенный на указанное количество календарных единиц времени.
Поддерживаются только
monthиyear.
- Source:
Example
import { addByCalendarUnit } from './utils/calendar.js';
console.log(addByCalendarUnit(Date.UTC(2024, 0, 31, 0, 0, 0, 0), 1, 'month')); // ожидаемый результат: 1709164800000
Parameters:
| Name | Type | Description |
|---|---|---|
timestamp |
number | Unix timestamp в миллисекундах. |
amount |
number | Количество единиц времени. |
unit |
string | Календарная единица времени. |
Throws:
-
-
Выбрасывается, если timestamp или amount некорректны.
- Type
- TypeError
-
-
-
Выбрасывается, если unit не поддерживается.
- Type
- Error
-
Returns:
Новый Unix timestamp в миллисекундах.
- Type
- number
(static) addByFixedUnit(timestamp, amount, unit) → {number}
- Description:
Возвращает новый timestamp, увеличенный на указанное количество фиксированных единиц времени.
- Source:
Example
import { addByFixedUnit } from './utils/calendar.js';
console.log(addByFixedUnit(1716638400000, 1, 'day')); // ожидаемый результат: 1716724800000
Parameters:
| Name | Type | Description |
|---|---|---|
timestamp |
number | Unix timestamp в миллисекундах. |
amount |
number | Количество единиц времени. |
unit |
string | Фиксированная единица времени. |
Throws:
-
-
Выбрасывается, если timestamp или amount некорректны.
- Type
- TypeError
-
-
-
Выбрасывается, если unit не является фиксированной единицей.
- Type
- Error
-
Returns:
Новый Unix timestamp в миллисекундах.
- Type
- number
(static) daysInMonth(year, month) → {number}
- Description:
Возвращает количество дней в указанном месяце указанного года.
- Source:
Example
import { daysInMonth } from '@alexstukovnikov/oz-time';
console.log(daysInMonth(2024, 2)); // ожидаемый результат: 29
Parameters:
| Name | Type | Description |
|---|---|---|
year |
number | Год. |
month |
number | Месяц от 1 до 12. |
Throws:
-
-
Выбрасывается, если year или month не являются целыми числами.
- Type
- TypeError
-
-
-
Выбрасывается, если month вне диапазона от 1 до 12.
- Type
- RangeError
-
Returns:
Количество дней в месяце.
- Type
- number
(static) diff(left, right, unitopt) → {number}
- Description:
Возвращает числовую разницу между двумя экземплярами OzTime в указанной единице времени.
Для фиксированных единиц может возвращать дробное число, для месяцев и лет возвращает целочисленную календарную разницу.
- Source:
Example
import { diff } from './utils/calendar.js';
import { fromISO } from '@alexstukovnikov/oz-time';
const a = fromISO('2024-05-25T14:00:00Z');
const b = fromISO('2024-05-25T12:00:00Z');
console.log(diff(a, b, 'hour')); // ожидаемый результат: 2
Parameters:
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
left |
OzTime | Левое значение. |
||
right |
OzTime | Правое значение. |
||
unit |
string |
<optional> |
'millisecond'
|
Единица времени. |
Throws:
-
-
Выбрасывается, если хотя бы один аргумент не является экземпляром OzTime.
- Type
- TypeError
-
-
-
Выбрасывается, если unit не поддерживается.
- Type
- Error
-
Returns:
Разница между двумя значениями времени.
- Type
- number
(static) isLeapYear(year) → {boolean}
- Description:
Проверяет, является ли год високосным по григорианскому календарю.
- Source:
Example
import { isLeapYear } from '@alexstukovnikov/oz-time';
console.log(isLeapYear(2024)); // ожидаемый результат: true
Parameters:
| Name | Type | Description |
|---|---|---|
year |
number | Год. |
Throws:
-
Выбрасывается, если year не является целым числом.
- Type
- TypeError
Returns:
true, если год високосный.
- Type
- boolean