Chrome 5中的date.format

时间:2010-05-28 12:06:51

标签: javascript date google-chrome

我正在使用带有Date()。格式的Chrome中的javascript遇到一些非常奇怪的事情。

如果我使用控制台并输入:

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 个答案:

答案 0 :(得分:4)

Date object.

中没有format个功能

您是从插件获得该功能吗? 如果是这样,那么我建议您阅读API以查找可能的参数。

我不知道这是否有帮助,但我尝试的所有插件都需要两个“y”才能获得四位数的年份字符串。

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

编辑:其他一些插件使用大写的“Y”,如d.format("Y-m-d");

EDIT2 :您似乎需要将日期格式化为“yyyy-MM-dd”。 您可以在代码中添加此原型函数:

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();

Source原型函数