如何以特定格式显示今天的完整日期?

时间:2018-11-16 20:41:20

标签: javascript jquery html

我找到了一些显示日期的示例,但是我需要使用一种特定的格式,例如:2018年6月15日,但是月份缩短了

[一月,二月,三月,四月,五月,六月,七月,八月,九月,十月,十一月,十二月]

因此需要它以上述格式显示今天的日期。

  var monthShortNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun",
  "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"
];

function dateFormat2(d) {
  var t = new Date(d);
  return t.getDate() + ' ' + monthShortNames[t.getMonth()] + ', ' + t.getFullYear();
}

//console.log(dateFormat2(new Date()))
var showDate = dateFormat2(new Date())

document.getElementById("todays-date").innerHTML = showDate + 14:44;

然后尝试在以下div中将其输出:

<div id="todays-date"></div>

似乎无法正常工作。如果有更好的方法,请告诉我。谢谢

3 个答案:

答案 0 :(得分:0)


我将代码转换为字符串,然后将其用空格分开。从那里,我能够根据需要拼接阵列。

function dateFormat2(d) {
  var date = d.toString().split(" ");
  return `${date.splice(1, 2).reverse().join(" ")} ${date[1]}`;
}
var showDate = dateFormat2(new Date());
document.getElementById("todays-date").innerHTML = showDate;
<div id="todays-date"></div>

答案 1 :(得分:0)

这是完整的工作示例

<p id="demo"></p>

<script>
    var monthShortNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun",
        "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"
    ];

    function getTime(t) {
        let hours = t.getHours(); 
        if(hours.toString().length == 1) {
            hours = "0" + hours;
        }
        let minutes = t.getMinutes(); 
        if(minutes.toString().length == 1) {
            minutes = "0" + minutes;
        }
        return hours + ':' + minutes;
    }
    function dateFormat2() {
        var t = new Date();
        return t.getDate() + ' ' + monthShortNames[t.getMonth()] + ', ' + t.getFullYear() + ' ' + getTime(t);
    }
    document.getElementById("demo").innerHTML = dateFormat2();

click here for working demo

答案 2 :(得分:-1)

它没有打印出日期,需要这个:

document.getElementById("todays-date").innerHTML = (dateFormat2(new Date()));