formatDate

by igorrybalko

JavaScript

function formatDate(val){

const months = [
            'янв', 'фев', 'мар', 'апр', 'май', 'июн', 'июл', 'авг', 'сен', 'окт', 'ноя', 'дек'
        ];

        var coma = val.match(/(\d\d)\.(\d\d)\.(\d{4})$/);
        if(coma){
            return `${coma[3]}-${coma[2]}-${coma[1]}`;
        }else{

            let valArr = val.trim().split(' ');

            let day = parseInt(valArr[0]);


            let strMonth = valArr[1].substr(0, 3);

           let mounth = months.indexOf(strMonth);

           if(mounth > -1){
               return `${valArr[2]}-${mounth}-${day}`;
           }else{
               return null;
           }
        }
}

          
  formatDate('12.04.2007');