Как получить объект даты - PullRequest
0 голосов
/ 21 марта 2012

Мое значение содержит «08.07.1987», как получить объект даты для этой строки. new Date (val) дает правильные значения объекта даты только для строкового значения, которое содержит формат "/". Может ли кто-нибудь дать мне знать, чтобы создать объект даты для значений, которые содержат "." или же "-". в своем формате.

Ответы [ 5 ]

4 голосов
/ 21 марта 2012

Как насчет того, чтобы просто настроить строку в соответствии с вашими потребностями?

var date1 = new Date("08.07.1987".replace('.','/'));
var date2 = new Date("08-07-1987".replace('-','/'));

Вам нужно быть осторожным, когда запрашиваете JavaScript для интерпретации даты в этом формате.Как вы, вероятно, можете себе представить, дата, указанная как «08.07.1987», на самом деле не указывает, будет ли она 7 августа или 8 июля.

В общем, лучше всего будет указать формат даты и соответственно проанализировать.

1 голос
/ 21 марта 2012

Вы должны разбить строку на токены для даты месяца и года, а затем создать ее с помощью API JS Date.

0 голосов
/ 21 марта 2012

попробуйте new Date("08.07.1987".replace('.','/','g')); протестировано только на Firefox

0 голосов
/ 21 марта 2012

Заменить разделители?

  var dateStr = "08.07.1987",
      dateObj = new Date(dateStr.replace(/[-.]/g,"/"));

Конечно, при необходимости вы можете инкапсулировать это в функцию ...

0 голосов
/ 21 марта 2012
var date="08.07.1987";
var newDate = date.replace(/(\.|-)/g,"/"));
var dateObject = new Date(newDate);
...