date.format в Chrome 5 - PullRequest
       4

date.format в Chrome 5

1 голос
/ 28 мая 2010

Я испытываю что-то действительно странное с моим javascript в chrome с форматом Date ().

Если я использую консоль и набираю:

d = new Date(Date.parse("2010-05-28"))
d.format("yyyy-MM-dd");
""
d._toFormattedString();
"Fri May 28 2010 00:00:00 GMT+0200 (W. Europe Daylight Time)"  

Кто-нибудь понял, почемуЯ получаю пустую строку?И это только в Chrome, не произошло в Chrome 4, и это не происходит в IE8 / Firefox3.5

1 Ответ

4 голосов
/ 28 мая 2010

В объекте Date нет функции format.

Вы получаете эту функцию от плагина?
Если это так, то я предлагаю вам прочитать API в поисках возможных параметров.

Я не знаю, может ли это помочь, но все плагины, которые я пробовал, требовали двух «y», чтобы получить четырехзначную строку года.

d = new Date(Date.parse("2010-05-28"))
d.format("yy-MM-dd");

РЕДАКТИРОВАТЬ: какой-то другой плагин использует заглавную "Y", как d.format("Y-m-d");

EDIT2 : Похоже, вам нужно просто отформатировать дату в "гггг-ММ-дд". Вы можете добавить эту функцию-прототип в свой код:

Date.prototype.toMyPreferredFormat = function(){
  var dd=this.getDate();
  if(dd<10)dd='0'+dd;
  var mm=this.getMonth()+1;
  if(mm<10)mm='0'+mm;
  var yyyy=this.getFullYear();
  return String(yyyy+"-"+mm+"-"+dd);
}

И используйте это как:

d = new Date(Date.parse("2010-05-28"))
d.toMyPreferredFormat();

Источник функции-прототипа

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...