-
Mobilarena
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
Taci
addikt
Szükségem lenne egy függvényre, ami egészen addig nem engedi tovább futni a szkript többi részét, amíg a szükséges változó értéket nem kap (mert utána azzal az értékkel dolgoznék tovább).
(Nem lehet összedrótozni/egybeágyazni őket sehogy, hogy csak akkor fusson a szkript maradék része, ha az érték visszajött az adatbázisból. Sajnos ez nem megoldható.)Ilyesmit kezdtem el összerakni, de nem úgy működik, ahogy szeretném:
function waitForResult(resultToWaitFor, acceptValue){
console.log("In waitForResult. resultToWaitFor = " + resultToWaitFor);
if (typeof resultToWaitFor !== 'undefined'){
setTimeout(function(){
waitForResult();
console.log("Waiting for result.")
if (resultToWaitFor >= acceptValue){
return 0;
}
}, 100);
} else {
console.log("Megvan az eredmény.");
return 0;
}
}
***** Az elképzelés lényege az lenne, hogy 100ms-onként ellenőrzi, hogy kapott-e már értéket a vizsgált változó. Ha nem, ellenőrzi újra (rekurzívan). Ha kapott, kilép, és engedi futni az utána következő részeket. Nem ad vissza értéket. Semmit nem csinál, csak "feltartja" a szkriptet addig, amíg a változó értéket nem kap. (És mindig kap. Jellemzően pár tized mp-en belül, viszont van, hogyha "túlbuzgó" a user, eljuthat ahhoz a részhez a kódhoz, ahol használni kell ezt az értéket, mielőtt még materializálódna a változó. Ezt szeretném orvosolni.)
Ha a jelen formájában használom, hiába érkezik meg az érték, folyamatosan pörög tovább (logban látszódik, hogy Waiting for result-ot dobálja eszement módon utána is).
Pont ennek utánajárva találtam, hogy az első if-ágban is kell egy return - a belső ellenőrzést (és vele az acceptValue-t) ezért hoztam be. De nem segített.
A return 0 azért lett, mert a sima return-nal nem (sem működött), próbáltam hát így is.
----------
Vagy csináljak egy setTimeout-os, while-os ellenőrzést, a végén emelgetve egy számlálót, és megadok egy értéket neki, amit soha nem érhet el? Max ez a backup plan, de jó lenne a későbbiekben is egy ilyen "waitForResult" függvény, jó lenne azt rendbe rakni.Irányt tudnátok mutatni a témában, kérlek?
Új hozzászólás Aktív témák
- Apple Watch Sport - ez is csak egy okosóra
- Futás, futópályák
- Milyen TV-t vegyek?
- Horgász topik
- Vezetékes FÜLhallgatók
- OLED TV topic
- PROHARDVER! feedback: bugok, problémák, ötletek
- Vezeték nélküli fülhallgatók
- Váratlanul kapott a piac egy új 16 GB-os Radeont
- Kezdő fotósok digitális fényképei
- További aktív témák...
- Ritkaság eladó!!! i5-5675c Iris pro grafikus maggal.
- Szép! Lenovo Thinkpad T14 G3 "Golyóálló" Üzleti Laptop 14" -50% i5-1250P 12Mag 16GB/512GB FHD+ IPS
- Lenovo ThinkPad T14 Gen 1 - Ryzen 5 Pro 4650U, 16GB RAM, 512GB NVMe SSD - Szépséghibával, áron alul!
- Eladó Lg Ultragear Oled 27GR95QE-B, garis 27.02ig
- be quiet! Pure Rock 2 Black 150W TDP Foxpost az árban
- DELL PowerEdge R630 rack szerver - 2xE5-2680v4 (28c/ 56t, 2.4/3.3GHz), 128GB RAM, 10G, áfás szla
- Telefon felvásárlás!! Samsung Galaxy A16, Samsung Galaxy A26, Samsung Galaxy A36, Samsung Galaxy A56
- 8 GB-os Quadro RTX 4000 kártyák - garanciával
- LG 48B4 - 48" OLED - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - PS5 és Xbox Ready
- LG 29WP500-B - 29" IPS LED - 2560x1080 Wide FHD - 75Hz 5ms - AMD FreeSync - HDR10
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest