date from toUTCString () - PullRequest
       8

date from toUTCString ()

3 голосов
/ 06 сентября 2011

Я создаю случайное время в случайной дате в следующем месяце, как это

var time = new Date(now.getFullYear(),
                    now.getMonth() + 1,
                    Math.floor(Math.random()*28), 
                    Math.floor(Math.random()*25), 
                    Math.floor(Math.random()*60), 
                    Math.floor(Math.random()*60), 
                    Math.floor(Math.random()*1000)
                    );

Я хочу сохранить эту дату как строку и после преобразования ее обратно в дату
Я использую

var time_for_save = time.toUTCString();

, который дает мне строку, подобную этой:

Sat, 01 Oct 2011 07:42:38 GMT

Как я могу преобразовать эту дату обратно в объект Date?
Или есть лучший способ сохранить / получить объект Date через строку?

Ответы [ 2 ]

4 голосов
/ 06 сентября 2011

Учитывая представление строки даты, вы можете использовать функцию Date.parse , чтобы получить «количество миллисекунд между строкой даты и полночью 1 января 1970 года».После этого вы можете использовать конструктор даты, чтобы получить новый объект даты из «миллисекунд эпохи».

var date = new Date(Date.parse(time_for_save));
1 голос
/ 06 сентября 2011

Конструктор <a href="https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date" rel="nofollow">Date</a> принимает строку:

var restoredDate = new Date(time_for_save);
...