如何在javascript中将日期字符串格式化为dd,MM yyyy

时间:2014-06-09 02:34:32

标签: javascript date

我明白了:

function parseDate(s)
{
var d = s.split(/\D/);


return new Date(d[2], --d[1], d[0]);

使用这样的日历标记:

<p:calendar
id="testDate"
styleClass="calendar"
pattern="d MMM, yyyy"
maxlength="10"
onchange="$(this).val(parseDate($(this).val()))"
onfocus="$(this).mask('99/99/9999');"
>
<p:watermark for="testDate" value="mm/dd/yyyy" />
</p:calendar>

我需要手动解析从'dd / mm / yyyy'到'd,MMM yyyy'的日期,但是使用上面的函数,结果是例如“星期三,1995年8月9日00:00:00”因此,有人可以帮助我,并告诉我如何改变格式,以便生成的字符串 d,MMM yyyy

我知道这应该是一项非常基本的任务,但我仍然在学习如何更好地编写代码,因此非常感谢您的所有帮助和解释!

2 个答案:

答案 0 :(得分:1)

看看momentjs,您可以使用它来解析日期并将其格式化为您想要的任何格式。

答案 1 :(得分:0)

懒惰方法:使用.toString()

function parseMyDate(s){

    var dateParts = s.split("/");

    var date = new Date(dateParts[2], (dateParts[1] - 1), dateParts[0]);

    var dateStrParts = date.toString().split(" ");

    return (date.getDate() + ", " + dateStrParts[1] + " " + dateStrParts[3]);
}

console.log(parseMyDate("09/06/2014"));

JSFiddle Demo