新格式化日期对象

时间:2012-01-31 13:11:22

标签: javascript

我有一个很长的值(1328005340400),我想将日期格式显示为“2012年1月31日星期二下午3:52:20”,如何在javascript中格式化,我只是使用了新的日期(1328005340400) .toLocaleString(),但它在firefox和“Tue Jan 31 2012 15:52:20 GMT + 0530(印度标准时间)”中显示“2012年1月31日星期二下午3:52:20”。如何使其成为通用格式?我们不能在不使用第三方代码的情况下实现

2 个答案:

答案 0 :(得分:2)

考虑http://momentjs.com/

var now = moment();
console.log(now.format('dddd, MMMM Do, YYYY h:mm:ss a'));

答案 1 :(得分:2)

我建议您查看 moment.js JavaScript库。

在许多有用的功能中,它为您提供 full control of the rendering of a date

以下文档中的一些示例

var date = new Date(2010, 1, 14, 15, 25, 50, 125);
moment(date).format("dddd, MMMM Do YYYY, h:mm:ss a"); // "Sunday, February 14th 2010, 3:25:50 pm"
moment(date).format("ddd, hA");                       // "Sun, 3PM"

考虑到您的问题,您可以通过以下

实现这一目标
var date = moment(1328005340400);
var str = date.format('dddd, MMMM D, YYYY h:mm:ss A');

注意:当然,您可以在没有任何第三方库的情况下实现此目的,但您必须自己重新编写大部分渲染并维护代码。除此之外,Moment.js非常轻量级,并且在许可的MIT许可下发布。