5 простых способов конвертировать строку UTC в формат даты мм/дд/гггг в JavaScript

Работа с датой и временем в JavaScript часто предполагает преобразование между различными форматами. Одним из распространенных требований является преобразование строки UTC в определенный формат даты, например мм/дд/гггг. В этой статье мы рассмотрим пять простых методов достижения такого преобразования с помощью JavaScript. Каждый метод будет объяснен разговорным языком и сопровождается примерами кода.

Метод 1: использование объекта Date

Объект Dateв JavaScript предоставляет встроенные методы для управления датами и временем. Чтобы преобразовать строку UTC в нужный формат, мы можем создать новый объект Dateи использовать его различные методы для извлечения отдельных компонентов даты.

const utcString = '2024-01-18T12:34:56Z';
const date = new Date(utcString);
const month = date.getMonth() + 1; // Add 1 because month is zero-based
const day = date.getDate();
const year = date.getFullYear();
const formattedDate = `${month.toString().padStart(2, '0')}/${day.toString().padStart(2, '0')}/${year}`;
console.log(formattedDate); // Output: 01/18/2024

Метод 2: использование метода toLocaleDateString

Метод toLocaleDateString — это удобный способ форматирования даты в соответствии с языковым стандартом пользователя. Указав нужные параметры, мы можем управлять выходным форматом.

const utcString = '2024-01-18T12:34:56Z';
const date = new Date(utcString);
const options = { month: '2-digit', day: '2-digit', year: 'numeric' };
const formattedDate = date.toLocaleDateString('en-US', options);
console.log(formattedDate); // Output: 01/18/2024

Метод 3. Использование библиотеки, например Moment.js

Moment.js — популярная библиотека JavaScript для обработки дат и времени. Он предлагает широкий спектр функций, включая мощные возможности форматирования.

Во-первых, включите библиотеку Moment.js в свой проект, загрузив ее или используя менеджер пакетов, например npm. Затем вы можете преобразовать строку UTC в нужный формат с помощью Moment.js.

const utcString = '2024-01-18T12:34:56Z';
const formattedDate = moment.utc(utcString).format('MM/DD/YYYY');
console.log(formattedDate); // Output: 01/18/2024

Метод 4: использование объекта Intl.DateTimeFormat

Объект Intl.DateTimeFormatпозволяет форматировать даты в соответствии с определенной локалью, аналогично toLocaleDateString. Этот метод обеспечивает более детальный контроль над форматом вывода.

const utcString = '2024-01-18T12:34:56Z';
const date = new Date(utcString);
const formatter = new Intl.DateTimeFormat('en-US', {
  month: '2-digit',
  day: '2-digit',
  year: 'numeric'
});
const parts = formatter.formatToParts(date);
const formattedDate = parts.map(part => part.value).join('');
console.log(formattedDate); // Output: 01/18/2024

Метод 5: использование собственных манипуляций со строками

Если вы предпочитаете более ручной подход, вы можете напрямую манипулировать строкой UTC, чтобы извлечь отдельные компоненты даты и создать желаемый формат.

const utcString = '2024-01-18T12:34:56Z';
const [year, month, day] = utcString.slice(0, 10).split('-');
const formattedDate = `${month}/${day}/${year}`;
console.log(formattedDate); // Output: 01/18/2024

В этой статье мы рассмотрели пять простых способов преобразования строки UTC в формат даты мм/дд/гггг в JavaScript. Мы рассмотрели использование объекта Date, toLocaleDateString, библиотеки Moment.js, Intl.DateTimeFormat, а также пользовательские манипуляции со строками. Выберите метод, соответствующий требованиям вашего проекта, и наслаждайтесь плавным преобразованием формата даты в своих приложениях JavaScript.