Autor | Zpráva | ||
---|---|---|---|
Melvil Profil * |
#1 · Zasláno: 24. 11. 2020, 19:06:27
Zdravím,
snažím se přepsat následující skript, abych náhodná čísla vybírat z API: var getRandomDatesInMonth = function(year, month) { var dates = []; for (var i = 0; i < 5; i++) { dates.push(new Date(year, month, Math.ceil(Math.random() * 30))); } console.log(dates); return dates; }; Skript jsem tedy přepsal: var getRandomDatesInMonth2 = function(year, month) { var dates = []; $.post( "test.php", { year: year, month: month }) .done(function( data ) { $.each(data, function(i, item) { console.log(item.date); dates.push(new Date(year, month, item.date)); }); }); console.log(dates); return dates; }; Ovšem data, které se mi vrací, jsou rozdílná, níže posílám obrázek z console: Netušíte prosím kde dělám chybu, aby mi i druhý kód vracel data ve stejném formátu? Díky moc! |
||
Melvil Profil * |
#2 · Zasláno: 24. 11. 2020, 19:39:51
Koukám že se nezobrazuje obrázek, tady je kdyžtak ibb.co/TRkfdRk
|
||
Radek9 Profil |
#3 · Zasláno: 24. 11. 2020, 22:59:47
Melvil:
Ajax (už z názvu - Asynchronous JavaScript And XML) je asynchronní. Ten return proběhne dřív než se zavolá ta callback funkce v done . Veškerá práce, kterou potřebuješ s těmi daty dělat, by se tedy měla spouštět až v ní.
|
||
Radek9 Profil |
(Omylem se mi to poslalo dvakrát.)
|
||
Časová prodleva: 3 roky
|
0