用Javascript格式化日期

时间:2019-01-11 20:46:20

标签: javascript date

我正在下面的JS代码中,其中.text(data.format_data.nextRechargeDate);以以下格式返回日期:"2019-02-09T05:00:00"

JavaScript代码:

this.$modal.find('.next-date').text(data.format_data.nextRechargeDate);

问题陈述:

我想知道我需要在上面的JS代码中进行哪些更改,以便它以以下方式返回数据格式:

January 11, 2019

此刻,如上所述,它以以下格式返回"2019-02-09T05:00:00"

3 个答案:

答案 0 :(得分:1)

使用moment.js,可以将字符串日期格式化为所需的格式,如下所示:

const formattedDate = moment("2019-02-09T05:00:00").format('MMMM DD, YYYY');

console.log(formattedDate); // "February 09, 2019"
<script src="https://unpkg.com/moment@2.23.0/min/moment.min.js"></script>

答案 1 :(得分:0)

您可以使用toLocaleDateString()方法来格式化日期"2019-02-09T05:00:00",如下所示:

var x = new Date("2019-02-09T05:00:00"); //replace this with your retrieved modal text

var options = { month: 'long', day: '2-digit', year: 'numeric' };

x = x.toLocaleDateString("en-us", options);

console.log(x);

答案 2 :(得分:0)

我不确定这是否是您所追求的,因为您所使用的环境并不十分清楚,但是我希望这将帮助您朝正确的方向前进

document.getElementById('next-date').value = moment().format().substr(0, 10);//(new Date()).toISOString().substr(0, 10);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.23.0/moment.min.js"></script>

<input type="date" id="next-date">
<button onclick="alert(moment(new Date(document.getElementById('next-date').value)).format('MMMM DD, YYYY'))">test</button>