функция DateTime::subtract

Расчитывает время и дату, меньшую текущей на заданный промежуток времени.

Синтаксис

DateTime
DateTime.subtract
(Duration duration)

Передаваемые параметры

Duration duration

Возвращаемое значение

DateTime

Описание

Метод subtract вычисляет и возвращает новое время и дату, представляющую текущую, за вычетом заданного промежутка времени duration.

Заметки

Пример


void main() {
  // установим дату, например, 2000-01-01
  Date year2000 = new Date(2000, 1, 1, 0, 0, 0, 0);
  
  // вычтим из нашей даты 365 дней, и получим новую:
  // 1999-01-01 00:00:00.000
  print(year2000.subtract(new Duration(365, 0, 0, 0, 0)));

  // вычтим из нашей даты 1 минуту, и получим новую:
  // 1999-01-01 00:00:00.000
  print(year2000.subtract(new Duration(0, 0, 1, 0, 0)));
  
  // а если вычесть отрицательное количество дней, например, -366, получим:  
  // 2001-01-01 00:00:00.000
  print(year2000.subtract(new Duration(-366, 0, 0, 0, 0)));
  // это будет аналогично вызову метода add:
  // 2001-01-01 00:00:00.000
  print(year2000.add(new Duration(366, 0, 0, 0, 0)));
  
  // с помощью этого метода можно легко узнать какое число было, например, 7 дней назад:
  print(new Date.now().subtract(new Duration(7, 0, 0, 0, 0)));
}

Официальная документация (английский)