【问题标题】:How to format JavaScript date to mm/dd/yyyy?如何将 JavaScript 日期格式化为 mm/dd/yyyy?
【发布时间】:2021-01-22 13:46:37
【问题描述】:

我正在获取类似“2017 年 11 月 8 日星期三 00:00:00 GMT-0800(太平洋标准时间)”的日期,并将值放入输入中。

有没有办法将日期时间解析成日期,加上五天,然后像mm/dd/yyyy一样格式化?

我发了https://jsfiddle.net/ax6qqw0t/

<script>
  startingDate = new Date(5/5/2017);
 var adjustedDate = addDays(startingDate,13);
$('#max_products').val(adjustedDate);
</script>

【问题讨论】:

  • 您可能会为此考虑使用 Moment.js 之类的库。
  • 如果您正在寻找人类可读日期格式的高度灵活性,您可能需要查看 Moment.js 库。
  • 哇,我用 moment.js 解决了它,我还能赞扬那些没有它解决的人吗?
  • 这就是程序员的魅力。

标签: javascript


【解决方案1】:

var date = new Date('Mon Aug 14 2017 00:00:00 GMT-0500 (CDT)');
var newdate= (date.getMonth() + 1) + '/' + date.getDate() + '/' +  date.getFullYear();

【讨论】:

  • 这真的是正确答案吗?对于一位数的月份或日期,它没有前面的零。我得到的例子是 5/1/1993 这不是 mm/dd/yyyy
【解决方案2】:

只是为了好玩,以下是您可以使用 moment.js 执行此操作的方法。

moment('2017-05-05').add(13, 'day').format('MM/DD/YYYY');

fiddle link

【讨论】:

    【解决方案3】:

    以下是有用的单行,可用于获取各种格式的日期字符串:

    日期格式为 m/d/yyyy 和 MM/DD/yyyy(填充零)

    >new Date().toLocaleString().split(",")[0]
    "2/7/2020"
    >new Date().toLocaleString().split(/\D/).slice(0,3).map(num=>num.padStart(2,"0")).join("/")
    "02/07/2020"
    

    日期格式为 yyyy-mm-dd 和 yyyymmdd:

    >new Date().toISOString().split("T")[0]
    "2020-02-07"
    >new Date().toISOString().split("T")[0].replace(/-/g,'')
    "20200207"
    

    【讨论】:

    • 对于 IE 11 的兼容性: new Date().toLocaleString().split(/\/|,| /).slice(0, 3).map(function (n) { return (n .replace(/\u200E/g,"")
    【解决方案4】:

    我确定您现在已经解决了这个问题,但它看起来很有趣,所以我决定使用 Intl.DateTimeFormat 尝试一下。

    // get date for five days later
    const date = 'Fri Dec 29 2017 00:00:00 GMT-0800 (Pacific Standard Time)';
    const dateSet = new Date(date);
    const fiveDaysLater = dateSet.setDate(dateSet.getDate() + 5);
    
    // set up date formatting parameters
    const ops = {year: 'numeric'};
    ops.month = ops.day = '2-digit';
    
    console.log(new Intl.DateTimeFormat([], ops).format(fiveDaysLater));

    【讨论】:

      猜你喜欢
      • 2018-09-01
      • 1970-01-01
      • 2013-11-01
      • 2015-11-03
      • 2013-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-17
      相关资源
      最近更新 更多