date_utils_lib
v1.0.4
Published
Вот обновлённая версия `README.md` для твоей библиотеки:
Downloads
13
Readme
Вот обновлённая версия README.md
для твоей библиотеки:
date_utils_lib
date_utils_lib — это библиотека для работы с датами, которая позволяет легко рассчитывать разницу между датами, добавлять дни и форматировать даты в различные форматы.
Установка
Вы можете установить библиотеку через npm:
npm install date_utils_lib
Как использовать
Для начала работы с библиотекой импортируйте объект, содержащий все методы:
import dateUtils from 'date_utils_lib';
Пример использования функции addDays
:
const newDate = dateUtils.addDays('2023-09-25', 5);
console.log(newDate); // Выведет новую дату с добавленными днями
Функция addDays
добавляет указанное количество дней к дате и возвращает новый объект Date
.
Пример использования функции dateDiff
:
const daysDifference = dateUtils.dateDiff('2023-09-25', '2023-09-30', 'days');
console.log(daysDifference); // Выведет 5
Функция dateDiff
рассчитывает разницу между двумя датами в указанных единицах: днях, часах или минутах.
Пример использования функции formatDate
:
const formattedDate = dateUtils.formatDate('2023-09-25', 'DD/MM/YYYY');
console.log(formattedDate); // Выведет "25/09/2023"
Функция formatDate
форматирует дату в соответствии с переданным форматом: YYYY-MM-DD
, DD/MM/YYYY
или MM-DD-YYYY
.
Методы библиотеки
addDays(date: string | Date, days: number): Date
Добавляет указанное количество дней к дате.
Параметры:
date
: исходная дата (строка или объектDate
).days
: количество дней для добавления.
dateDiff(date1: string | Date, date2: string | Date, unit: 'days' | 'hours' | 'minutes'): number
Рассчитывает разницу между двумя датами в заданных единицах.
Параметры:
date1
: первая дата.date2
: вторая дата.unit
: единица измерения (days
,hours
,minutes
).
formatDate(date: string | Date, format: 'YYYY-MM-DD' | 'DD/MM/YYYY' | 'MM-DD-YYYY'): string
Форматирует дату в указанный формат.
Параметры:
date
: дата для форматирования.format
: формат, в котором должна быть возвращена дата (YYYY-MM-DD
,DD/MM/YYYY
,MM-DD-YYYY
).
Тестирование
Пример тестов с использованием Vitest:
import { describe, it, expect } from 'vitest';
import dateUtils from 'date_utils_lib';
describe('dateUtils', () => {
it('addDays should correctly add days to date', () => {
const result = dateUtils.addDays('2023-09-25', 5);
expect(result).toEqual(new Date('2023-09-30'));
});
it('dateDiff should calculate difference in days correctly', () => {
const result = dateUtils.dateDiff('2023-09-25', '2023-09-30', 'days');
expect(result).toBe(5);
});
it('formatDate should format date correctly', () => {
const result = dateUtils.formatDate('2023-09-25', 'DD/MM/YYYY');
expect(result).toBe('25/09/2023');
});
});
Скрипты
npm run build
: Компилирует код в форматах ESM и CommonJS.npm run watch
: Запускает режим наблюдения для автоматической компиляции при изменениях.npm run test
: Запускает тесты с использованием Vitest.
Структура проекта
- src: Исходный код библиотеки.
addDays.ts
: Функция для добавления дней к дате.dateDiff.ts
: Функция для расчета разницы между датами.formatDate.ts
: Функция для форматирования даты.index.ts
: Главный файл для экспорта функций.
- tests: Тесты для функций библиотеки.
Лицензия
Лицензия ISC.
Автор
radymyr