Hirdetés
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Milyen egeret válasszak?
- AMD Catalyst™ driverek topikja
- LG LCD és LED TV-k
- Újra nekifeszül az asztali konzolok piacának a Valve
- Milyen TV-t vegyek?
- Házimozi haladó szinten
- Házimozi belépő szinten
- Bluetooth hangszórók
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
-
PROHARDVER!
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
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Milyen egeret válasszak?
- AMD Catalyst™ driverek topikja
- Battlefield 6
- LG LCD és LED TV-k
- OFF TOPIC 44 - Te mondd, hogy offtopic, a te hangod mélyebb!
- Újra nekifeszül az asztali konzolok piacának a Valve
- Black Friday november 29. / Cyber Monday december 2.
- Samsung Galaxy S23 Ultra - non plus ultra
- Milyen TV-t vegyek?
- További aktív témák...
- ASUS ROG Delta S USB-C
- -ÚJ,2 ÉV GAR- GAMER PC: RYZEN 5 4500-5600X +RX 6600/6700XT +16-64GB DDR4! SZÁMLA! 70 féle ház!
- Dell Latitude 7410 Strapabíró Ütésálló Profi Ultrabook Laptop 14" -80% i7-10610U 16/512 FHD IPS MATT
- Lenovo ThinkVision LFD E65 65" LFD kijelző új
- Legion 5 Pro 16IAH7H Intel Core i7-12700H CPU / 32GB DDR5 RAM / 1TB SSD / Nvidia RTX3070 8GB
- Apple iPhone 11 64GB, Kártyafüggetlen, 1 Év Garanciával
- GYÖNYÖRŰ iPhone 13 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS3580, 100% Akkumulátor
- 159 - Lenovo LOQ (15APH8) - AMD Ryzen 7 7840HS, RTX 4060
- Xiaomi Redmi Note 14 Pro 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
- Xiaomi Redmi Pad SE 64GB, Kártyafüggetlen, 1 Év Garanciaval
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő


