Ale funguje to tak, jak to fungovat má. Pomocí setTimeout() nastavíš, za jaký čas se má funkce vykonat a program pokračuje dál. Hledáš asi něco jako delay(), ale to v JS nenajdeš.
Zpoždění můžeš simulovat velkou smyčkou, prázdnej for cyklus, ale ani náhodou neodhadneš kolik průchodů je potřeba na 1 s. Na každým PC to bude jinak, i na stejným PC to bude jinak v závislost na vytížení procesoru.