Do czego służy generator dat losowych
Generator dat losowych wybiera jedną datę albo listę dat z przedziału, który podasz. Ustawiasz początek i koniec zakresu, liczbę dat i sposób zapisu, a wynik pojawia się od razu pod formularzem. Przy jednej dacie generator pokazuje też dzień tygodnia, numer dnia w roku, tydzień ISO i to, ile dni dzieli ją od dzisiaj.
Programistom losowe daty przydają się do danych testowych. Organizatorzy spotkań i konkursów losują nimi termin, a nauczyciele układają ćwiczenia z kalendarzem. Wyniki skopiujesz jednym przyciskiem albo pobierzesz jako plik TXT, CSV lub JSON. Jeśli zamiast dat potrzebujesz liczb, skorzystaj z generatora liczb losowych.
Jak wylosować datę
- Ustaw zakres w polach Od i Do. Oba dni należą do zakresu. Przyciski pod polami wpisują gotowe przedziały: ostatni rok, bieżący rok, przyszły rok albo najbliższe 30 dni.
- Wpisz, ile dat potrzebujesz, albo przesuń suwak. Jednorazowo wylosujesz od 1 do 1000 dat.
- Wybierz format zapisu. Na każdym przycisku widać, jak w tym formacie wygląda data 25 marca 2026.
- W razie potrzeby rozwiń Więcej opcji. Ograniczysz tam losowanie do dni roboczych albo weekendów, ustawisz kolejność, dodasz losową godzinę i zdecydujesz, czy daty mogą się powtarzać.
- Kliknij Losuj daty. Całą listę skopiujesz przyciskiem Kopiuj wszystkie, a pojedynczą datę ikoną obok niej.
Format, kolejność i godzinę możesz zmienić po losowaniu. Generator przepisze wtedy te same daty, bez losowania nowych. Po zmianie zakresu, liczby dat, dni tygodnia albo powtórzeń kliknij Losuj daty jeszcze raz.
Pod polami z datami widać, ile dni obejmuje zakres. Po wybraniu dni roboczych albo weekendów pojawia się też liczba takich dni. Dzięki temu policzysz na przykład dni powszednie między dwiema datami, choć bez odejmowania świąt.
Zastosowania losowych dat
Dane testowe i testy oprogramowania
Formularze, raporty i bazy danych trzeba sprawdzić na datach innych niż dzisiejsza. Kilkaset losowych dat w formacie ISO 8601 wystarczy, żeby wypełnić tabelę w środowisku deweloperskim albo przygotować przypadki do testów jednostkowych. Losowa godzina daje znaczniki czasu podobne do tych w logach i zamówieniach. Resztę rekordu uzupełnisz w generatorze danych testowych i generatorze PESEL.
Losowanie terminu
Kiedy kilka terminów pasuje tak samo dobrze, losowanie rozstrzyga sprawę bez dyskusji. Wylosujesz w ten sposób dzień spotkania zespołu z najbliższych 30 dni, datę ogłoszenia wyników konkursu albo sobotę na wyjazd, jeśli ustawisz filtr Weekendy. Pojedyncza data jest wyświetlana dużą czcionką, więc łatwo pokazać ją innym na ekranie.
Nauka i ćwiczenia
Na lekcji uczniowie mogą ustalać dzień tygodnia dla wylosowanej daty, liczyć dni między dwiema datami albo zamieniać zapis 25.03.2026 na słowny. Na zajęciach z programowania lista dat w kilku formatach to gotowy materiał do ćwiczeń z parsowania i sortowania.
Próba losowa w badaniach
Jeśli masz dane z całego roku, ale nie dasz rady przejrzeć każdego dnia, wylosuj kilkanaście dni bez powtórzeń i przeanalizuj tylko je. Taka próba nie faworyzuje żadnego okresu, bo każdy dzień miał tę samą szansę trafienia do wyników.
Formaty zapisu dat
Ta sama data wygląda inaczej w bazie danych, w polskim piśmie i w amerykańskim formularzu. Generator zapisuje ją na siedem sposobów:
| Format | Przykład | Gdzie się go używa |
|---|---|---|
| Polski z kropkami | 25.03.2026 | pisma, faktury i formularze w Polsce |
| ISO 8601 | 2026-03-25 | bazy danych, API, logi, nazwy plików |
| Z myślnikami | 25-03-2026 | arkusze kalkulacyjne i eksporty z programów |
| Z ukośnikami | 25/03/2026 | Wielka Brytania, Francja, Hiszpania, Włochy |
| Amerykański | 03/25/2026 | Stany Zjednoczone i systemy na rynek amerykański |
| Od roku z kropkami | 2026.03.25 | spotykany między innymi w Korei Południowej i na Węgrzech |
| Słowny | 25 marca 2026 | umowy, zaproszenia, oficjalna korespondencja |
Najwięcej pomyłek powodują ukośniki. Data 03/05/2026 oznacza w Polsce i Wielkiej Brytanii 3 maja, a w Stanach Zjednoczonych 5 marca. Jeśli dane trafią do kogoś za granicą, bezpieczniej użyć ISO 8601 albo zapisu słownego.
Format zmienia tylko wygląd daty, a wylosowany dzień zostaje ten sam. Możesz więc przełączać formaty po losowaniu i od razu zobaczyć wynik.
ISO 8601 i polskie zwyczaje zapisu
Norma ISO 8601 ukazała się w 1988 roku. Ustala zapis od największej jednostki do najmniejszej: rok, miesiąc, dzień, a po literze T godzinę, minutę i sekundę, na przykład 2026-03-25T14:07:31. Przy takiej kolejności daty posortowane alfabetycznie są też posortowane chronologicznie. Dlatego ISO 8601 to domyślny wybór w bazach danych, plikach JSON i nazwach plików.
W Polsce na co dzień zapisujemy datę od dnia. W pismach i formularzach najczęściej spotkasz zapis z kropkami, na przykład 25.03.2026, a w umowach i zaproszeniach zapis słowny: 25 marca 2026 r. Nazwa miesiąca stoi wtedy w dopełniaczu, czyli „marca”, a nie „marzec”. Generator używa tej formy w formacie słownym.
Amerykanie zaczynają od miesiąca, tak jak czytają datę po angielsku: March 25, 2026. Większość Europy i Ameryki Łacińskiej stawia dzień przed miesiącem, ale oddziela części różnymi znakami: kropką, ukośnikiem albo myślnikiem.
Jak działa losowanie dat
Generator liczy zakres w pełnych dniach. Obie daty zamienia na numery dni liczone od 1 stycznia 1970 roku. Różnica tych numerów powiększona o jeden to liczba dni w zakresie. Potem generator losuje liczbę od zera do liczby dni minus jeden i dodaje ją do pierwszego dnia. Ponieważ liczy pełne dni, a nie milisekundy, pierwszy i ostatni dzień mają tę samą szansę co pozostałe, a zmiana czasu na letni nie przesuwa wyniku.
// Numery dni od 1 stycznia 1970 roku
const start = Date.UTC(2025, 9, 7) / 86400000;
const end = Date.UTC(2026, 9, 7) / 86400000;
const days = end - start + 1;
// Każdy dzień z zakresu ma szansę 1/days
const day = start + Math.floor(Math.random() * days);
const date = new Date(day * 86400000); Przy filtrze dni roboczych albo weekendów generator odrzuca dzień, który nie pasuje, i losuje jeszcze raz. Opcja Bez powtórzeń działa podobnie i pomija dni, które już padły. Gdy pasujących dni jest niewiele, generator układa z nich listę i tasuje ją algorytmem Fishera i Yatesa. Losowa godzina to osobna liczba od 0 do 86 399, czyli numer sekundy w dobie.
Liczby losowe pochodzą z funkcji Math.random wbudowanej w przeglądarkę. Chrome, Firefox i Safari obliczają je algorytmem xorshift128+. To generator pseudolosowy: wystarcza do danych testowych, losowania terminu i ćwiczeń, ale nie nadaje się do kryptografii. Obliczenia odbywają się w przeglądarce, więc daty nie trafiają na serwer.
Dni robocze, weekendy i święta
Filtr Robocze zostawia dni od poniedziałku do piątku, a filtr Weekendy tylko soboty i niedziele. Generator nie zna kalendarza świąt, więc dzień roboczy oznacza dla niego po prostu dzień powszedni. W wynikach może się pojawić na przykład 15 sierpnia albo 11 listopada, jeśli w danym roku wypada między poniedziałkiem a piątkiem.
Część polskich świąt ma stałą datę, jak Nowy Rok, 3 maja czy Boże Narodzenie. Od 2025 roku dniem wolnym jest też Wigilia. Inne, na przykład Poniedziałek Wielkanocny i Boże Ciało, co roku wypadają w innym terminie. Jeśli losujesz dni pracy, sprawdź wylosowane daty w kalendarzu i usuń te, które przypadają w święto.
Eksport wyników do pliku
Plik TXT zawiera daty w wybranym formacie, po jednej w linii. Wczytasz go w skrypcie albo wkleisz do arkusza.
Plik CSV ma trzy kolumny: datę w wybranym formacie, tę samą datę w ISO 8601 i nazwę dnia tygodnia. Kolumny oddziela średnik, a plik jest zapisany w UTF-8 ze znacznikiem BOM, więc Excel z polskimi ustawieniami otworzy go od razu w kolumnach i pokaże polskie znaki. Kolumna ISO przydaje się, gdy arkusz nie rozpoznaje wybranego formatu jako daty.
Plik JSON zawiera zakres losowania, liczbę dat i tablicę obiektów z polami date, iso i weekday. Pole iso zawsze ma zapis ISO 8601, więc w kodzie zamienisz je na obiekt daty bez względu na wybrany format.
Do testów warto losować daty z zakresu, który obejmuje 29 lutego i przełom roku, bo przy takich dniach najczęściej psują się obliczenia. Najbliższy rok przestępny to 2028.
Często zadawane pytania
Czy każda data z zakresu ma taką samą szansę?
Tak. Generator najpierw liczy dni w zakresie, łącznie z pierwszym i ostatnim, a potem losuje jeden z nich. Przy zakresie 365 dni każdy dzień ma szansę 1 do 365. Przy filtrze dni roboczych albo weekendów szanse rozkładają się po równo między dni, które przechodzą filtr.
Ile dat mogę wylosować naraz?
Od 1 do 1000. Przy włączonej opcji Bez powtórzeń dat nie może być więcej niż dni w zakresie. Jeśli poprosisz o więcej, generator wylosuje wszystkie dostępne dni i napisze, ile ich było.
Czy opcja Robocze pomija święta?
Nie. Robocze oznacza dni od poniedziałku do piątku. Święto, które wypada w dzień powszedni, na przykład 1 maja albo 11 listopada, może się pojawić w wynikach. Jeśli losujesz dni pracy, sprawdź wylosowane daty w kalendarzu.
Jak wylosować datę z godziną?
Rozwiń Więcej opcji i włącz Losowa godzina. Każda data dostanie godzinę od 00:00:00 do 23:59:59. W plikach CSV i JSON znajdziesz też zapis ISO 8601 z literą T, na przykład 2026-03-25T14:07:31.
Czy wylosowane daty mogą się powtarzać?
Domyślnie nie, bo opcja Bez powtórzeń jest włączona i każdy dzień pojawia się najwyżej raz. Po jej wyłączeniu każda data jest losowana niezależnie, więc ten sam dzień może wypaść kilka razy. Przy włączonej godzinie powtórzenia dotyczą dnia, nie godziny.
Czym różni się format ISO 8601 od polskiego zapisu z kropkami?
ISO 8601 zapisuje datę od roku do dnia: 2026-03-25. Takie daty sortują się poprawnie jak zwykły tekst, dlatego używają go bazy danych i API. Polski zapis 25.03.2026 zaczyna od dnia. Łatwiej go przeczytać, ale posortowany alfabetycznie nie układa się chronologicznie.
Czy wylosowane daty są wysyłane na serwer?
Nie. Losowanie, formatowanie i tworzenie plików odbywa się w przeglądarce. Strona nie zapisuje wyników, więc po odświeżeniu znikają. Jeśli chcesz je zachować, skopiuj je albo pobierz plik.
Czy mogę losować daty z odległej przeszłości albo przyszłości?
Tak, zakres może obejmować dowolne dni od roku 1000 do 9999. Dla dat sprzed 1582 roku, kiedy wprowadzono kalendarz gregoriański, generator nadal liczy dni według dzisiejszego kalendarza, więc dzień tygodnia może się różnić od zapisanego w ówczesnych źródłach.