javascript日期与字符串

Myy*_*Myy 0 javascript formatting date

我正在尝试将javascript中的日期从MM/dd/yyyy转换为yyyy/MM/dd

这样可行:

var d = new Date("08/08/2012");
dateString = d.getFullYear() + "/" + d.getMonth() + "/" + d.getDate();
document.write(dateString);
Run Code Online (Sandbox Code Playgroud)

输出= 2012/7/8

////////////////////////////////////////////////// /

不是:

var dateString = "08/08/2012";
var d = new Date(dateString);
dateString = d.getFullYear() + "/" + d.getMonth() + "/" + d.getDate();
document.write(dateString);
Run Code Online (Sandbox Code Playgroud)

没有做到这一点:

var dateString = "08/08/2012";
var d = Date.parse(dateString);
dateString = d.getFullYear() + "/" + d.getMonth() + "/" + d.getDate();
document.write(dateString);
Run Code Online (Sandbox Code Playgroud)

如何使用字符串变量?谢谢

〜MYY

Qua*_*cal 5

var dateString = "08/08/2012";
var d = new Date(dateString);
dateString = d.getFullYear() + "/" + d.getMonth() + "/" + d.getDate();
document.write(dateString);
Run Code Online (Sandbox Code Playgroud)

这应该而且确实有效.请记住,JavaScript将月份存储为零索引值.

如果你想拥有前导零,那么你将不得不做一些魔术:

var dateString = "08/08/2012";
var d = new Date(dateString);
dateString = d.getFullYear() + "/" + ('0' + (d.getMonth()+1)).slice(-2) + "/" + ('0' + d.getDate()).slice(-2);
document.write(dateString);?
Run Code Online (Sandbox Code Playgroud)

的jsfiddle

您的Date.parse( )示例无效的原因是因为该函数返回时间戳(自1970年以来的毫秒数),而不是Date对象.因此,您无法调用getFullYear()时间戳上的函数.