Преобразуйте число c строку даты (дд / мм / гггг) в строку, разделенную новой строкой, с коротким названием месяца - PullRequest
0 голосов
/ 02 марта 2020
function setTableHeader(v,k) {
            for (var i = 0; i <= k; i++) {
                $('.data-date-set').append('<th>' + result1[i] + '</th>');
            }
        }

Я получил функцию с именем setTableHeader , которая получает (v, k) .

v получает такие даты, как (Dynami c даты)

"30/03/2020"
"31/03/2020"
"01/04/2020"
"02/04/2020"

Он добавляется к

<table class="table table-bordered" id="Tablev">
        <tr class="data-date-set">
            <th></th>
        </tr>
    </table>

, а затем к dr aws представлению сетки, в котором эти даты представлены в виде столбцов. ouput-

30/03/2020|31/03/2020|01/04/2020
          |          |

Но мне нужен вот такой вывод:

  30    |   31   |   01
  Mar   |   Mar  |  Apr
 2020   |  2020  |  2020
        |        |

Итак, для достижения этого есть простой способ сделать это, а не использовать переключатель.

Ответы [ 2 ]

4 голосов
/ 02 марта 2020

Вы можете использовать Date.prototype.toLocaleDateString(), чтобы преобразовать вашу дату в подходящий формат и применить String.prototype.replace(), чтобы заменить разделитель по умолчанию на требуемый (\n, <br\>, et c):

const dates = ['30/03/2020','31/03/2020','01/04/2020','02/04/2020'],
      formatDate = s => 
        new Date(s.split('/').reverse())
          .toLocaleDateString('en-GB',{day:'numeric', month:'short',year:'numeric'})
          .replace(/ /g, "<br\>")
          
$('#Tablev tr').html(
  dates.map(dateStr => `<th>${formatDate(dateStr)}</th>`)
)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table class="table table-bordered" id="Tablev">
  <tr class="data-date-set"></tr>
</table>
1 голос
/ 02 марта 2020

используйте Date.toLocaleDateString(), чтобы получить название месяца на основе номера месяца.

var event = new Date(Date.UTC(2012, 11, 20));

var options = { month: 'short'};

var month =event.toLocaleDateString('en-US', options);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...