Hirdetés
- Samsung Galaxy S21 FE 5G - utóirat
- Milyen okostelefont vegyek?
- Samsung Galaxy A54 - türelemjáték
- Szívós, szép és kitartó az új OnePlus óra
- Xiaomi 15 - kicsi telefon nagy energiával
- Bemutatkozott a Poco X7 és X7 Pro
- Xiaomi 14T Pro - teljes a család?
- Utolérné riválisait a Vivo akkumulátorban
- iPhone topik
- Amazfit Helio Strap – képernyőmentesen
-
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
-
CSorBA
őstag
válasz
Mr Dini
#6334
üzenetére
De a JavaScript nem így működik. A JS egy szálon fut. Ha valami külső dologra (async) kell várnia, akkor nem állhat le. Ugrik a következő sorra. Hát gondolj bele, ha valami hiba történne, vagy lassú lenne a net, akkor addig állna, míg be nem tölt valamit? És az állt úgy kell érteni, hogy addig semmit sem tudsz csinálni. Épp ezért egy ilyen asyncron kérés visszatér egy promissal, ami ha resolválódik. (Teljesül az ígéret) akkor meghívja a jövőben azt a függvényt, ami erre várt.
Az általad hozott példát valahogy így lehetne használni:
function getPage (url) {
'use strct';
return new Promise((resolve, reject) => {
const httpLibrary = url.startsWith('https') ? require('https') : require('http');
httpLibrary.get(url, (response) => {
const body = [];
response.on('data', (chunk) => body.push(chunk));
response.on('end', () => resolve(body.join('')));
}).on('error', (error) => {
console.log('Error!', error.message);
});
});
}
getPage('http://vanenet.hu').then((html) => doWhateverYouWantWithHTML(html));
function doWhateverYouWantWithHTML (html) {
console.log(html);
}A doWhateverYouWantWithHTML-be írod amit szeretnél csinálni, és ez akkor hívódik meg, mikor betöltődött sikeresen a page, amivel meghívtad a getPaget.
Szerk.: De ahogy látom Jim-Y fórumtárs is erre próbált fentebb rávezetni, egy hasonló példával.
Tényleg olvasgass a témában, nem feltétlen egyszerű, de mindenkinél van egy pillanat mikor átkattan és megérti.
Új hozzászólás Aktív témák
- HIBÁTLAN iPhone 13 Pro Max 256GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3958, 100% Akksi
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7700X 32/64GB RAM RTX 5070 Ti 16GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 16/32/64GB RAM RX 9060 XT 8GB GAMER PC termékbeszámítással
- HIBÁTLAN iPhone 13 Pro Max 128GB Graphite -1 ÉV GARANCIA - Kártyafüggetlen, MS3391
- BESZÁMÍTÁS! ASRock B650 Steel Legend WiFi R5 8600G 32GB DDR5 500GB SSD RX 7800XT 16GB NZXT H700i
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


