【问题标题】:How can I parse a specific date string in JavaScript?如何解析 JavaScript 中的特定日期字符串?
【发布时间】:2011-10-31 19:39:18
【问题描述】:

假设我将日期作为字符串,例如:02-12-2011

我怎样才能解析它,并使它的格式:

2011 年 12 月 2 日,星期五。

提前谢谢你!

【问题讨论】:

标签: javascript parsing date


【解决方案1】:

这样的事情应该可以工作:

var date = "02-12-2011".split('-');

var month = (date[0] * 1 ) - 1; // * 1 to convert to Number - 1 to subtract to 1 (months are from 0 - 11)
var day   = date[1];
var year  = data[2];

var d = new Date();
d.setMonth(month);
d.setDate(day);
d.setFullYear(year);

console.log(d.toDateString()); // will output Sat Feb 12 2011

您还可以通过创建自己的使用 getter getMonth()getDate()getFullYear()getDay() 的函数来设置不同的日期格式。

如果您想要更轻的解决方案。否则@diEcho 提到的链接看起来不错。

此外,W3School 参考虽然不是最好的样式,但对于有关各种 JavaScript 对象的一般“了解事实”参考来说相当不错。

这里是 Date 对象的链接:http://www.w3schools.com/jsref/jsref_obj_date.asp

【讨论】:

  • +1 表示month = ... -1。愚蠢的 JavaScript Date 对象认为月份是从 0 到 11。不是天,不是年,只是几个月。我讨厌业余设计的语言。
【解决方案2】:

This blog article on JavaScript date formatting 将有助于格式化部分。

【讨论】:

    猜你喜欢
    • 2011-06-08
    • 1970-01-01
    • 2018-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-07
    • 1970-01-01
    相关资源
    最近更新 更多