JavaScript currant日期月份格式问题

时间:2017-09-21 10:44:51

标签: javascript html

我尝试使用html转换为月份的全名但我无法正确地做到这一点,任何人都知道如何做到这一点我需要21-September-2017 请帮我解决这个问题 谢谢,



function init(){
    var d = new Date();
    var day = d.getDate();
    var x = d.toDateString().substr(4, 3);
    var year = d.getFullYear();
    document.querySelector("#date").innerHTML = day + '-' + x + '-' + year;
}
window.onload = init;

<div id="date"></div>
&#13;
&#13;
&#13;

3 个答案:

答案 0 :(得分:2)

您可以使用toLocaleString()来获得月份。

function init(){
    var d = new Date();
    var day = d.getDate();
    var locale = "en-us";
    var month = d.toLocaleString(locale, { month: "long" });
    var year = d.getFullYear();
    document.querySelector("#date").innerHTML = day + '-' + month + '-' + year;
}
window.onload = init;
<div id="date"></div>

答案 1 :(得分:0)

您无法直接获得完整的月份名称。但你可以像这样做手动实现,

var d = new Date();
var month = new Array();
month[0] = "January";
month[1] = "February";
month[2] = "March";
month[3] = "April";
month[4] = "May";
month[5] = "June";
month[6] = "July";
month[7] = "August";
month[8] = "September";
month[9] = "October";
month[10] = "November";
month[11] = "December";
var n1 = month[d.getMonth()];
var day = d.getDate();
var year = d.getFullYear();
var final_date = day+"-"+n1+"-"+year;

<强> FIDDLE

答案 2 :(得分:0)

使用Date.prototype.toLocaleString

它会将您的日期转换为指定语言和国家/地区代码所使用的区域设置格式。仅适用于最新的浏览器。

function init(){
    var d = new Date();
    var options = {day: 'numeric', month: 'long', year: 'numeric' };
    document.querySelector("#date").innerHTML = d.toLocaleString('en-US', options);
}
window.onload = init;
<div id="date"></div>

  

这将使用客户端的当前时区。要否定这一点,请使用以下选项:   options.timeZone = 'UTC';   options.timeZoneName = 'short';