8

我正在寻找一种将 Javascript Date 对象转换为字符串的方法。我正在将我的网站从 Ruby 转换为服务器端 Javascript,并且我正在寻找类似于strftimeRuby、C 和许多其他语言的东西。

我发现很多简单的脚本可以进行这种转换,但如果有标准的方法,我不希望包含自定义实现。

我没有使用 Javascript 框架。我正在使用 Mozilla Rhino,但希望尽可能远离使用 Java 库,以便在实现之间轻松移动我的代码。

我希望能够指定字符串的格式,因为我想将它嵌入到一个句子中。我希望能够插入任意的 on's 和 at's,并拥有当天的全名,而不仅仅是缩写。所以 toString() 是不够的。

4

6 回答 6

9

有一个免费的(很棒的)Javascript 库,名为Datejs,它为您提供各种格式化和解析功能(请参阅FormatSpecifiers文档)。

于 2009-12-19T16:27:04.760 回答
6

JavaScript 中没有内置任何东西可以让您像这样格式化日期的显示strftime

最接近的是Date().toLocaleString(),它将日期作为根据本地时区格式化的字符串返回。

于 2009-12-19T16:28:20.000 回答
2

MomentJS有一组非常强大的时间格式化选项,并且最近也进行了更新。

于 2012-09-18T14:21:17.090 回答
2

日期有一个内置的 toString:

alert(new Date().toString())

“2009 年 12 月 19 日星期六 08:23:33 GMT-0800(太平洋标准时间)”

于 2009-12-19T16:23:18.763 回答
1

您可以使用我对 Java 的SimpleDateFormat的 JavaScript 实现:http ://www.timdown.co.uk/code/simpledateformat.php 。它比 date.js 轻一点,并且因为它包含在log4javascript中而保持最新。

于 2009-12-20T16:04:24.960 回答
1

你可以使用

new Date().toString()

...获得日期的本地化输出。

于 2009-12-19T16:23:31.153 回答