JavaRush /Курсы /Модуль 1: Web Core /Date. Форматирование дат и чисел

Date. Форматирование дат и чисел

Модуль 1: Web Core
19 уровень , 1 лекция
Открыта

2.1 Объект Date

Работа с датами и числами — важная часть разработки веб-приложений. JavaScript предоставляет встроенные объекты и методы для манипулирования датами и числами. В этой лекции мы рассмотрим объект Date, его методы и способы форматирования дат и чисел.

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

Создание объекта Date

Важно!
Если вы создаете объект Date() без параметров, он будет содержать текущую дату и время — момент своего создания.

Создать объект Date можно несколькими способами.

1. Текущая дата и время:

JavaScript
    
      const now = new Date();

      console.log(now); // Выводит текущую дату и время
    
  

2. Задание определенной даты и времени:

JavaScript
    
      const specificDate = new Date('2024-07-07T10:00:00');

      console.log(specificDate); // Выводит дату 7 июля 2024 года
    
  

3. Задание даты и времени с помощью числовых значений:

JavaScript
    
      const anotherDate = new Date(2024, 6, 7, 10, 0, 0);

      console.log(anotherDate); // Выводит дату 7 июля 2024 года
    
  

2.2 Методы объекта Date()

Получение компонентов даты:

  • getFullYear(): получить год (четыре цифры)
  • getMonth(): получить месяц (от 0 до 11)
  • getDate(): получить день месяца (от 1 до 31)
  • getHours(): получить часы (от 0 до 23)
  • getMinutes(): получить минуты (от 0 до 59)
  • getSeconds(): получить секунды (от 0 до 59)

Пример:

JavaScript
    
      const now = new Date();

      console.log(now.getFullYear()); // Текущий год
      console.log(now.getMonth()); // Текущий месяц (-1)
      console.log(now.getDate()); // Текущий день
      console.log(now.getHours()); // Текущий час
      console.log(now.getMinutes()); // Текущая минута
      console.log(now.getSeconds()); // Текущая секунда
    
  

Установка компонентов даты:

  • setFullYear(year): установить год
  • setMonth(month): установить месяц
  • setDate(day): установить день месяца
  • setHours(hours): установить часы
  • setMinutes(minutes): установить минуты
  • setSeconds(seconds): установить секунды

Пример:

JavaScript
    
      const date = new Date();

      date.setFullYear(2025);
      date.setMonth(0); // Январь
      date.setDate(15);
      date.setHours(12);
      date.setMinutes(30);
      date.setSeconds(45);

      console.log(date.toString());
    
  

2.3 Форматирование дат

JavaScript предоставляет методы для форматирования дат в строку. Самый популярный метод — toLocaleDateString() для форматирования даты в зависимости от локали.

Пример использования toLocaleDateString():

JavaScript
    
      const now = new Date();

      console.log(now.toLocaleDateString('en-US')); // "7/7/2024" (MM/DD/YYYY)
      console.log(now.toLocaleDateString('en-GB')); // "07/07/2024" (DD/MM/YYYY)
      console.log(now.toLocaleDateString('ru-RU')); // "07.07.2024" (DD.MM.YYYY)
    
  

Метод toLocaleTimeString()

Метод toLocaleTimeString() возвращает время в виде строки в локализованном формате:

JavaScript
    
const now = new Date();

console.log(now.toLocaleTimeString('en-CA')); 
console.log(now.toLocaleTimeString('en-GB')); 
    
  

Метод toLocaleString()

Метод toLocaleString() возвращает дату и время в виде строки в локализованном формате:

JavaScript
    
      const now = new Date();

      console.log(now.toLocaleString('en-CA')); 
      console.log(now.toLocaleString('en-GB')); 
    
  

Метод toISOString()

Метод toISOString() возвращает дату и время в формате ISO 8601:

JavaScript
    
      const now = new Date();

      console.log(now.toISOString()); // "2023-07-05T10:00:00.000Z"
    
  

2.4 Форматирование чисел

Метод toLocaleString()

Метод toLocaleString() позволяет форматировать числа в соответствии с локальными настройками:

JavaScript
    
      const number = 1234567.89;

      console.log(number.toLocaleString()); // "1,234,567.89" в формате США или "1 234 567,89" в локальном формате
      console.log(number.toLocaleString('de-DE')); // "1.234.567,89" в формате Германии
    
  

Форматирование чисел с помощью Intl.NumberFormat

Конструктор Intl.NumberFormat предоставляет вам еще более гибкие возможности для форматирования чисел:

JavaScript
    
      const number = 1234567.89;

      const usFormatter = new Intl.NumberFormat('en-US');
      console.log(usFormatter.format(number)); // "1,234,567.89"

      const deFormatter = new Intl.NumberFormat('de-DE');
      console.log(deFormatter.format(number)); // "1.234.567,89"

      const customFormatter = new Intl.NumberFormat('en-US', {
        style: 'currency',
        currency: 'USD'
      });

      console.log(customFormatter.format(number)); // "$1,234,567.89"
    
  
1
Задача
Модуль 1: Web Core, 19 уровень, 1 лекция
Недоступна
Текущая дата и время
Текущая дата и время
1
Задача
Модуль 1: Web Core, 19 уровень, 1 лекция
Недоступна
Компоненты даты
Компоненты даты
Комментарии
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ