使用javascript将month-day-year转换成day-month-year

时间:2020-02-19 09:36:51

标签: javascript momentjs

我正在尝试将MM/DD/YYYY日期转换为长日期。因此,例如,02/16/2020将转换为16/02/2020之类的东西。

有没有一种方法可以准确地进行此日期转换?

5 个答案:

答案 0 :(得分:1)

使用moment进行日期格式化:

示例代码:

moment('02/16/2020').format('16/02/2020');

您可以在moment.js之前播放日期。对于javascript开发人员来说,这是非常有用的工具。

Momemet Js Document

对于动态值:

moment(yourDate, 'MM/DD/YYYY').format('DD/MM/YYYY');

在这里,yourDate是您的动态价值日期。

答案 1 :(得分:1)

检查此。是工作。

function formatDate(date) {
    var d = new Date(date),
        month = '' + (d.getMonth() + 1),
        day = '' + d.getDate(),
        year = d.getFullYear();

    if (month.length < 2) month = '0' + month;
    if (day.length < 2) day = '0' + day;

    return [day,month,year].join('/');
}
document.getElementById('res').innerHTML =  formatDate('02/16/2020') ;
<div id="res">res</div>

答案 2 :(得分:1)

您需要指定时间的原始格式,然后将其转换为新格式。

const date = "02/16/2020";
alert(moment(date, "MM/DD/YYYY").format('DD/MM/YYYY'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>

答案 3 :(得分:0)

2 || 1个内衬?

var src = '02/16/2020'
var a = src.split('/');
console.log(a.concat(a.splice(0, 2)).join('/'));
console.log(src.replace(/(\d+)\/(\d+)\/(\d+)/, '$3/$1/$2'));

答案 4 :(得分:0)

  1. 如果只想在您提到的确切格式之间进行转换:

function dfConvert(f) {
  var farr = f.split("/");
  return `${farr[1]}/${farr[0]}/${farr[2]}`;
}

var input = "02/16/2020";
console.log(`input: ${input}`)
console.log(`output: ${dfConvert(input)}`);

  1. 如果您想要实际的日期对象,出于某种原因希望从中获取您提到的格式:

function toDate(f) {
  var farr = f.split("/");
  return new Date(parseInt(farr[2]), parseInt(farr[0])-1, parseInt(farr[1]))
}

function dfConvert(f) {
  var d = toDate(f)
  var day = d.getDate()
  var month = (d.getMonth() + 1)
  var year = d.getFullYear()
  return `${((day.toString().length <= 1) ? "0": "")}${day}/${((month.toString().length <= 1) ? "0": "")}${month}/${year}`
}

var input = "02/16/2020"
console.log(`input: ${input}`)
console.log(`output: ${dfConvert(input)}`)

希望有帮助

相关问题