Формат гггммдд дата - PullRequest
       13

Формат гггммдд дата

0 голосов
/ 02 ноября 2011

Мне нужна эта функция JavaScript, чтобы не разбивать гггг-мм-дд, а разбивать гггммдд. Текущие форматы даты 2011-11-02, но эта функция должна работать с 20111102.

Сценарий:

        function evaluateEventDate(eventdate, date){
        var eventdate = eventdate.split('-');
        var date = date.split('-');

        if (eventdate[0] === 'yyyy')
        {
            eventdate[0] = date[0];
        }

        if (eventdate[1] === 'mm') 
        {
            eventdate[1] = date[1];
        }

        if (eventdate[2] === 'dd')
        {
            eventdate[2] = date[2];
        }

        return eventdate[0]+'-'+eventdate[1]+'-'+eventdate[2];
    };

Ответы [ 2 ]

5 голосов
/ 02 ноября 2011

Вы можете сделать это:

var date = date.match(/(\d{4})(\d{2})(\d{2})/); // [yyyymmdd, yyyy, mm, dd]
date.shift(); // remove yyyymmdd from array.
...
1 голос
/ 02 ноября 2011

Продолжая работу с вашего другого вопроса, я придумал следующую функцию для решения вашей проблемы, используя substr:

function evaluateEventDate(eventdate, date){
    var event_y = eventdate.substr(0, 4);
    var event_m = eventdate.substr(4, 2);
    var event_d = eventdate.substr(6, 2);

    var date = date.split('-');

    if (event_y === 'yyyy')
    {
        event_y = date[0];
    }

    if (event_m === 'mm') 
    {
        event_m = date[1];
    }

    if (event_d === 'dd')
    {
        event_d = date[2];
    }

    return event_y + '-' + event_m + '-' + event_d;
};
...