Добавление дней к дате в ActionScript

У нас есть приложение, в котором пользователь должен ввести дату, значение которой не превышает 30 дней после текущей даты (даты, когда пользователь использует приложение). Это приложение Flash, поэтому мне нужно добавить 30 дней к текущей дате и получить правильную дату. Что-то вроде JavaScript:

myDate.setDate(myDate.getDate()+30);

Или в С#:

DateTime.Now.Add(30);

Есть ли такая вещь в ActionScript?

Ответ 1

В то время как другие ответы будут работать уверенно, это так же просто:

var dte:Date = new Date();
dte.date += 30; 
//the date property is the day of the month, so on Sept. 15 2009 it will be 15

Это даже увеличит месяц, если потребуется, и год. Вы можете сделать это с помощью свойств месяца и года.

Ответ 3

Мой класс TimeSpan может оказаться полезным здесь (это порт .NET System.TimeSpan):

var now : Date = new Date();
var threeDaysTime : Date = TimeSpan.fromDays(3).add(now);

Ответ 4

@Zerata​​p >

Добавление миллисекунд напрямую не будет работать, если даты не будут меняться в течение дня...

Однако вы можете добавить несколько секунд:

var date: Date = new Date(); date.seconds + = 86400; = > это работает, даже если даты происходят через изменение DLS.

Maurice

Ответ 5

Я пишу код из верхней части головы, не компилируя его, но я бы использовал getTime(). Что-то вроде:

var today : Date = new Date();
var futureDate : Date = new Date();
futureDate.setTime(today.getTime() + (1000 * 60 * 60 * 24 * 30));

1000 * 60 * 60 * 24 * 30 = миллисекунды * секунды * минуты * часы * дни

Имеет смысл?