[英]How to get the full date with javascript?
我正在尝试使用我的功能获取完整日期。 目前,我的结果是“ 2018年2月14日星期三”,但我想说“ 2018年2月星期三”。 我想说一整天和整个月。 不幸的是,我找不到“ get fullDate”方法。
window.onload = function() { var date = new Date(); document.getElementById("date").innerHTML = date.toDateString(); }
<div id="date"> </div>
您实际上正在寻找toLocaleString
函数, 因为可以对其进行大量自定义而不会丢失date对象 。
window.onload = function() { var date = new Date(); document.getElementById("date").innerHTML = date.toLocaleString('en-US', {weekday: 'long', month: 'long', year: 'numeric'}); }
<div id="date"> </div>
如果您正在寻找本地日期方法:
function dateConvert(){ let date = new Date(); let year = date.getFullYear(); let month= date.getMonth(); let day = date.getDay(); let months = ['January','February','March','April','May','June','July','August','September','October','November','December']; let days = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday']; return converted_date = `${days[day]} ${months[month]} ${year}`; } document.write(dateConvert());
您已经注意到,本机的Date方法有一些限制。 有几种自定义方法,如果您只需要这种方法,那可能就是您应该使用的方法。 如果您需要更强大的功能,我建议您使用一个库,以避免在尝试正确处理格式时间的疯狂问题时遇到很多陷阱。
一个非常流行的库称为momentjs 。 一个非常简单的解决方案是使用其format
方法 :
const date = new Date(); document.getElementById("date").innerHTML = moment().format("dddd MMMM YYYY");
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.20.1/moment.min.js"></script> <div id="date"> </div>
希望这可以帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.