我正在使用带有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中不会发生
答案 0 :(得分:4)
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原型函数