From ebfa4f46dc4e1c0ffabfb525590e901be6ee60ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kov=C3=A1cs=20Rudolf?= Date: Thu, 17 Sep 2026 09:30:49 +0200 Subject: [PATCH] =?UTF-8?q?Promiseok=20haszn=C3=A1lata?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- promise/promise.js | 56 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 promise/promise.js diff --git a/promise/promise.js b/promise/promise.js new file mode 100644 index 0000000..0c1c9b0 --- /dev/null +++ b/promise/promise.js @@ -0,0 +1,56 @@ +//Promise: egy aszinkron műveletet reprezentál +//Három állapota lehet: +//pending: fut +//fulfilled: lefutott, elvégezte a feladatát +//rejected: valamilyen hiba miatt vissza lett utasítva + +let p1=new Promise((resolve,reject)=>{ + resolve(150); +}); + +p1.then(ertek=>console.log(ertek)).catch(err=>console.log(err)); + +let p2=function(a,b){ + return new Promise((resolve,reject)=>{ + if(a>b){ + resolve(a); + } else { + reject("Az a-nak nagyobbnak kell lennie mint ab!"); + } + }) +} + +p2(100,50).then(ertek=>console.log(ertek)).catch(err=>console.log(err)); + +p2(50,100).then(ertek=>console.log(ertek)).catch(err=>console.log(err)); + +console.log("Valami"); + +p2(100,50).then(ertek=>p2(ertek,800)).then(ertek=>console.log(ertek)).catch(err=>console.log(err)); + +function novel(szam){ + return szam+60; +} + +//A promise összekombinálható normál függvénnyel +p2(50,5).then(ertek=>p2(ertek,10)).then(ertek=>novel(ertek)).then(ertek=>console.log(ertek)).catch(err=>console.log(err)); + +async function promiseok() { + try { + let adat1=await p1; + let adat2=await p2(adat1,10); + console.log('Async:'+adat2); + + + } catch (error) { + console.log(error); + } +} + +promiseok(); + +//Ha a promisok egymástól függetlenek, akkor egyszerre is futtathatóak + +const all=Promise.all([p1,p2(190,100)]); + +all.then(ertekek=>console.log(ertekek)).catch(err=>console.log(err)); \ No newline at end of file