var dt = new Date();
var mmddyyyy = dt.getMonth() + ":" + dt.getDay() + ":" + dt.getYear();
var time = dt.getHours() + ":" + dt.getMinutes();
$('#elem').html(mmddyyyy + time);
我正在尝试上述操作,以便简单地设置格式” 日期Feb 14 | 20:02 '
可悲的是,它的输出如下:
1:5:11916:4
答案 0 :(得分:2)
这里有几个问题。首先getMonth()
返回日期中月份的从零开始的索引。要将其转换为月份的短名称字符串,您可以定义自己的数组,您可以基于该值通过索引进行访问。
然后,您使用getDay()
返回星期几。我想您想用getDate()
来给您当前的月份。然后,您需要getFullYear()
才能获得四位数的年份值,而不是getYear()
。
最后,随着时间的推移,您需要在小时和分钟上填充前导零,然后将它们连接到最终输出字符串。
话虽如此,请尝试以下操作:
var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
var dt = new Date();
var mmddyyyy = months[dt.getMonth()] + ' ' + dt.getDate() + ' ' + dt.getFullYear();
var time = ('00' + dt.getHours()).slice(-2) + ":" + ('00' + dt.getMinutes()).slice(-2);
$('#elem').html(mmddyyyy + ' | ' + time);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="elem"></div>
如果您需要对此进行任何进一步的修改,建议您阅读Date() object reference at MDN。它涵盖了所有可用于日期格式化的方法。