JSFiddle - React, Tailwind, and code Playground

by kazabr

JavaScript

function outputDate(date) {
    var type = {}.toString.call(date).slice(8, -1),
        time = 0;

    switch(type) {
        case 'Number':
            time = new Date(date*1000);
        break;
        case 'Date':
            time = date;
        break;
        case 'String':
            date = date.split('-');
            time = new Date(date[0], date[1]-1, date[2]);
        break;
        case 'Array':
            time = new Date(date[0], date[1], date[2]);
        break;
        default: 
           throw new Error('Не поддерживаемый тип аргумента');
        break;
    }
    
    var dd = time.getDate();
    if( dd < 10 ) dd = '0' + dd;
    
    var mm = time.getMonth() + 1;
    if( mm < 10 ) mm = '0' + mm;
    
    var yy = time.getFullYear() % 100;
    if( yy < 10 ) yy = '0' + yy;

    return dd+'.'+mm+'.'+yy;
}

console.clear();
console.log( outputDate('2011-10-02') );
console.log( outputDate(1234567890) );
console.log( outputDate([2000,0,1]) );
console.log( outputDate(new Date(2000,0,1)) );