TypeScript:
Розбір дати з рядка
Як зробити:
TypeScript, будучи надмножиною JavaScript, покладається на об’єкт Date для розбору дат з рядків. Однак, робота з датами в JS/TS може стати мудрою або неточною через особливості об’єкта Date. Ось базовий приклад, за яким йде підхід з використанням популярної бібліотеки date-fns
для більш надійних рішень.
Використання об’єкта Date JavaScript
// Базовий розбір з використанням конструктора Date
const dateFromString = new Date("2023-04-21T15:00:00Z");
console.log(dateFromString.toString());
// Вивід для GMT: "Fri Apr 21 2023 15:00:00 GMT+0000 (Координований всесвітній час)"
Цей метод працює для рядків формату ISO та деяких інших форматів дат, але може давати неоднозначні результати для неоднозначних форматів у різних браузерах та локаціях.
Використання date-fns
Бібліотека date-fns
забезпечує просте та консистентне управління датами. Це модульна бібліотека, що дозволяє включати тільки ті частини, які вам потрібні, зменшуючи розмір пакета.
Спочатку встановіть date-fns
:
npm install date-fns
Потім використовуйте її для розбору рядка дати:
import { parseISO, format } from 'date-fns';
// Розбір ISO рядка
const dateString = "2023-04-21T15:00:00Z";
const parsedDate = parseISO(dateString);
// Форматування дати (наприклад, у зручну для читання форму)
console.log(format(parsedDate, "PPPpp"));
// Вивід: "Apr 21st, 2023 at 3:00 PM" (вивід може варіюватись залежно від локації)
date-fns
підтримує широкий спектр форматів та локацій, роблячи її надійним вибором для додатків, яким потрібен точний розбір та форматування дат у різних користувацьких регіонах.