从格式化日期解析日期和时间

时间:2013-07-06 06:59:43

标签: javascript date date-format

我的日期格式如下:

Wed Jul 17 2013 13:00:00 GMT-0700 (PDT)

任何人都可以告诉我如何解析日期

Wed Jul 17 2013

并且不使用字符串函数的时间

1:00pm

4 个答案:

答案 0 :(得分:1)

最简单的方法之一是确保你的LOCALES设置正确,这样就可以做到这样的事情:

var myStrDate = 'Wed Jul 17 2013 13:00:00 GMT-0700 (PDT)';
var myDate = Date.parse(myStrDate);
var myDateOnly = myDate.toLocaleDateString();
var myTimeOnly = myDate.toLocaleTimeString();

这是一个很好的起点:http://www.w3schools.com/jsref/jsref_obj_date.asp

答案 1 :(得分:1)

您可以使用日期字符串构造Date对象,并结合其他函数来获取所需的输出。 dayname()返回日期名称,monthname()返回三个字母的月份名称。

我已使用console.info()输出结果 - 如果合适,可以使用alert()作为替代。

function dayname(d)
{
  var names = [ "Sun", "Mon", "Tue", "Wed", "Thu", "Fri","Sat" ];
  return names[d.getDay()];
}
function monthname(d)
{
    var names = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
    return names[d.getMonth()];
}

// construct new date object passing date string as parameter  
var d = new Date("Wed Jul 17 2013 13:00:00 GMT-0700 (PDT)");
console.info(dayname(d) + ' ' + monthname(d) + ' ' + d.getDate() + ' ' + d.getFullYear());

当时,gettime()函数检查小时是否正确输出am或pm,以及正确格式化:

function gettime(d)
{
    var ampm = "am";
    var hour = d.getHours();
    var mins = d.getMinutes();
    if (hour >= 12)
    {
        hour = hour - 12;
        ampm = "pm";
    }
    if (hours < 10)
        hours = "0" + hours;
    if (mins < 10)
        mins = "0" + mins;
    return hour + ":" + mins + ampm;
}
console.info(gettime(d));

答案 2 :(得分:1)

var ms = Date.parse(new Date("Wed Jul 17 2013 13:00:00 GMT-0700 (PDT)"));
var curr_date = ms.getDate();
var curr_month = ms.getMonth() + 1; //Months are zero based
var curr_year = ms.getFullYear();
var hours = ms.getHours();
var mins = ms.getMinutes();
suf = (hours >= 12)? 'pm' : 'am';
hours = hours % 12;
document.write(curr_date + "-" + curr_month + "-" + curr_year + "  " + hours + ":" + min + " " + suffix);

同时尝试使用moment.js,您可以根据需要格式化dateTime。

答案 3 :(得分:0)

这里有很好的参考资料来学习javascript https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date

中的日期函数