Converting dates in YYYY-MM-DD to DD-MONTH in JavaScript

前端 未结 3 1040
清歌不尽
清歌不尽 2021-01-25 18:33

I have the following dates as strings..

2016-10-14
2016-10-15
2016-10-16
2016-10-17
2016-10-18
2016-10-19
2016-10-20

How can I dynamically conv

3条回答
  •  情歌与酒
    2021-01-25 19:16

    There is no need for a Date object, and certainly you should not parse strings with the Date constructor.

    Note that:

    new Date('2016-10-14')
    

    will return a date for 13 October for users with a time zone west of Greenwich.

    Just reformat the string:

    /* Reformat a date like 2016-10-14 as dd MMM
    ** @param {string} s - date string to reformat
    ** @returns {string}
    */
    function formatDDMMM(s) {
      var months = 'Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec'.split(' ');
      var b = s.split(/\D/);
      return b[2] + ' ' + months[b[1]-1];
    }
    
    console.log(formatDDMMM('2016-10-14'));

提交回复
热议问题