在JavaScript中格式化日期

时间:2009-03-03 11:10:04

标签: javascript date

在Java脚本中使用newDate()函数,我能够得到今天的日期。我将以3/3/2009格式(d / m / yyyy)获取日期。但我实际上需要2009-03-03格式的日期(yyyy-mm-dd)。任何人都可以告诉我如何根据需要格式化日期吗?

6 个答案:

答案 0 :(得分:5)

您通常必须编写自己的函数来处理日期的格式,因为javascript不包含以用户定义的方式格式化日期的好方法。你可以在网上找到一些很好的代码,因为这已经完成了死亡,试试这个:

http://blog.stevenlevithan.com/archives/date-time-format

编辑:上面的代码似乎非常好,并通过日期对象的原型安装了一个很酷的'格式'方法。我会用那个。

答案 1 :(得分:3)

如果你想要自己动手,这不是很难,你可以使用内置的javascript Date Object methods

例如,要以您想要的格式获取当前日期,您可以执行以下操作:

var myDate = new Date();
var dateStr = myDate.getFullYear + 
    '-' + (myDate.getMonth()+1) + '-' + myDate.getDate();

如果当天需要两位数格式,则可能需要对getDate()方法进行填充。

我为日期转换创建了一些有用的js函数,并在我的应用程序中使用它们。

答案 2 :(得分:2)

有一个非常好的库来管理JS中的日期。

尝试this

答案 3 :(得分:1)

你几乎必须自己格式化,是的。

var curDate = new Date();
var year = curDate.getFullYear();
var month = curDate.getMonth() + 1;
var date = curDate.getDate();
if (month < 10) month = "0" + month;
if (date < 10) date = "0" + date;
var dateString = year + "-" + month + "-" + date;

它有点长,但它会起作用(:

答案 4 :(得分:1)

在您的页面中添加jquery ui插件。

function DateFormate(dateFormate, dateTime) {
    return $.datepicker.formatDate(dateFormate, dateTime);
};

答案 5 :(得分:0)

我写的另一个选项是:

DP_DateExtensions Library

不确定它是否有帮助,但我发现它在几个项目中很有用。

支持日期/时间格式,日期数学(加/减日期部分),日期比较,日期解析等。它是自由开源的。

如果您已经在使用框架(他们都有能力),没有理由考虑它,但如果您只是需要快速添加日期操作到项目给它一个机会。