Руководство о том, как легко вычесть 30 дней из текущей даты в JavaScript.

1. Методы даты setDate() и getDate()
Чтобы вычесть 30 дней из текущей даты в JavaScript:
- Используйте конструктор
Date()для создания нового объектаDateс текущей датой. - Вызовите метод
getDate()для этого объекта, чтобы получить дни. - Вычтите 30 из возвращаемого значения
getDate(). - Передайте результат вычитания методу
setDate().
// Current date: September 29, 2022 const date = new Date();date.setDate(date.getDate() - 30);// New date: August 30, 2022 console.log(date);
Метод Date getDate() возвращает число от 1 до 31, которое представляет день месяца конкретного Date.
Метод Date setDate() изменяет день месяца объекта Date на число, переданное в качестве аргумента.
Если указанные вами дни изменяют месяц или год Date, setDate() автоматически обновляет информацию Date, чтобы отразить это.
// April 25, 2022 const date = new Date('2022-04-25T00:00:00.000Z');date.setDate(40);// May 10, 2022 console.log(date); // 2022-05-10T00:00:00.000Zconsole.log(date.getDate()); // 10
В апреле всего 30 дней, поэтому передача 40 в setDate() здесь увеличивает месяц на единицу и устанавливает день месяца на 10.
2. функция date-fns subDays()
В качестве альтернативы мы можем использовать функцию subDays() из пакета NPM date-fns, чтобы вычесть 30 дней из текущей даты. subDays() принимает объект Date и количество дней для вычитания в качестве аргументов. Он возвращает новый объект Date с вычтенными днями.
import { subDays } from 'date-fns';// Current date: September 29, 2022 const date = new Date();const newDate = subDays(date, 30);// New date: August 30, 2022 console.log(newDate);
Обратите внимание, что subDays() возвращает новый объект Date без изменения переданного ему объекта.
Первоначально опубликовано на codingbeautydev.com
Все сумасшедшие вещи, которые делает JavaScript
Увлекательное руководство по тонким предостережениям и менее известным частям JavaScript.

Зарегистрируйтесь и немедленно получите бесплатную копию.