// Sprawdzenie godziny co sekundę.
setInterval(logClockTime, 1000);

function logClockTime() {

    // Pobranie godziny w żądanym formacie.
    var time = getClockTime();

    // Usunięcie zawartości konsoli i wyświetlenie godziny.
    console.clear();
    console.log(time);
}

function getClockTime() {

    // Pobranie bieżącej godziny.
    var date = new Date();

    // Serializacja bieżącej godziny.
    var time = {
        hours: date.getHours(),
        minutes: date.getMinutes(),
        seconds: date.getSeconds(),
        ampm: "AM"
    }

    // Konwersja bieżącej godziny.
    if (time.hours == 12) {
        time.ampm = "PM";
    } else if (time.hours > 12) {
        time.ampm = "PM";
        time.hours -= 12;
    }

    // Dodanie zera do godziny, aby otrzymać liczbę dwucyfrową.
    if (time.hours < 10) {
        time.hours = "0" + time.hours;
    }

    // Dodanie zera do minuty, aby otrzymać liczbę dwucyfrową.
    if (time.minutes < 10) {
        time.minutes = "0" + time.minutes;
    }

    // Dodanie zera do sekundy, aby otrzymać liczbę dwucyfrową.
    if (time.seconds < 10) {
        time.seconds = "0" + time.seconds;
    }

    // Sformatowanie bieżącej godziny jako ciągu tekstowego w postaci "gg:mm:ss pd".
    return time.hours + ":"
        + time.minutes + ":"
        + time.seconds + " "
        + time.ampm;

}
