Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript中的日期时间格式_Javascript_Date_Time_Formatting - Fatal编程技术网

javascript中的日期时间格式

javascript中的日期时间格式,javascript,date,time,formatting,Javascript,Date,Time,Formatting,当我用以下代码生成日期时 var date = new Date(); 我得到的日期时间如下表所示 Sat May 11 2013 21:54:23 GMT-0700 (PDT) 谁能告诉我如何在不使用regex/string函数的情况下生成以下表单的日期 Sat May 11 2013 21:54:23 除了您看到的一种特定格式之外,Javascript没有附带日期格式库。您可以通过将所需的精确片段拼接在一起并将字符串添加到一起来构建自己的数据格式库,也可以获得第三方日期格式库 如果你想

当我用以下代码生成日期时

var date = new Date();
我得到的日期时间如下表所示

Sat May 11 2013 21:54:23 GMT-0700 (PDT)
谁能告诉我如何在不使用regex/string函数的情况下生成以下表单的日期

Sat May 11 2013 21:54:23

除了您看到的一种特定格式之外,Javascript没有附带日期格式库。您可以通过将所需的精确片段拼接在一起并将字符串添加到一起来构建自己的数据格式库,也可以获得第三方日期格式库

如果你想要一个第三方的图书馆,这个图书馆是相当彻底的。在该图书馆中,它将是:

Date.today().toString("ddd MMM d yyyy H:mm:ss");
当然,您可以从内置日期对象获取所有组件值,然后构建自己的字符串

在不添加库的情况下,您必须以自己的方式编写特定格式:

function formatDate(date) {
    function makeTwoDigits(val) {
        var prefix = val <= 9 ? "0" : "";
        return prefix + val;
    }
    var dayOfWeek = date.getDay();                  // 0-6, 0=Sunday
    var month = date.getMonth();                    // 0-11
    var day = date.getDate();                       // 1-31
    var year = date.getFullYear();                  // 2013
    var hours = makeTwoDigits(date.getHours());     // 0-23
    var mins = makeTwoDigits(date.getMinutes());    // 0-59
    var secs = makeTwoDigits(date.getSeconds());    // 0-59

    var days = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
    var months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];

    return days[dayOfWeek] + " " + months[month] + " " + day + " " + year + " " +
           hours + ":" + mins + ":" + secs;
}
函数格式日期(日期){
函数maketwodights(val){
var prefix=val试着试一试:

它有一个日期格式选项的集合,我相信会给你你想要的


忽略上述Javascript库并以本机方式执行:

var date = new Date();
date = date.toDateString() + ' ' + date.getHours() + ':' + date.getMinutes() + ':' + date.getSeconds();

这对你有用吗?

谢谢Adam。我很想在不添加库的情况下实现这一点。哦!我想我已经为你找到了一些东西:这是stackoverflow链接以获取更多信息编辑:我只是注意到它没有包括你的小时、分钟和秒要求,所以我更新了小提琴,这是
新日期的格式链接
依赖于实现,因此最好根据UTC epoch时间戳生成自己的字符串。为什么不想(或不能)使用正则表达式/字符串格式?@benpearce-我添加了一个自定义函数来生成所需的日期格式。@benpearce-更新了我的函数,在通常情况下填充前导零。