2015 óta az EcmaScript6 (ES6) számos előrelépést hozott a JavaScript kódolási gyakorlatban. Számos modern koncepciót vezettek be a JavaScriptbe, ami nagymértékben javította a kódolási élményt. Ebben a cikkben megismerheti a JavaScript iterátorait és generátorait.
Az iterátorok és a generátorok két különböző fogalom, de hasonló módon használják őket. Arra szolgálnak, hogy JavaScriptben tömbökön és objektumokon keresztül iteráljanak.
Iterátorok
Az iterátorok olyanok, mint a fejlett ciklusok, amelyek szüneteltethetők. Az iterátorok a következő() függvény, amely az értéket és a kész állapotot adja vissza. Az érték mező a tömb értéke egy adott indexnél. Kész az a logikai érték, amely a cikluson keresztül adja vissza az iteráció befejezésének állapotát.
Íme egy példa, amely bemutatja az iterátorok működését:
function fruitIter (gyümölcsök) {
legyen index = 0;
Visszatérés {
következő: function () {
visszatérési index }
}
}
const fruitArray = ["Mango", "Banán", "Szőlő"];
const gyümölcsök = gyümölcsIter (fruitArray);
console.log (fruit.next (). érték);
Kimenet:
Mangó
Amikor elhalad a gyümölcsökTömb tömb a fruitIter () metódust, egy iterátort ad vissza, amely a gyümölcsök változó. Az index változó a fruitIter () metódust 0 -ra inicializálják. Ez a módszer a következő() funkció, amely segít cikluson keresztül a tömbön. Az következő() függvény ellenőrzi, hogy az index kisebb -e, mint gyümölcsökTömb hossz. Ha igen, akkor két változót ad vissza: a gyümölcs nevét ezen az indexen, és a Kész állapot. Ezen értékek visszaadása közben az index értékét is növeli.
A módszer működésének ellenőrzéséhez és a gyümölcs nevének kinyomtatásához hívja a következő() funkció a gyümölcsök iterátor, és hozzáférhet az értékéhez.
Összefüggő: Mi a funkció a programozásban?
Generátorok
A generátorok hasonlóak az iterátorokhoz, de több értéket adnak vissza. Ezeket az értékeket hozamértékeknek nevezzük. A generátor funkciók a függvény* szintaxisa. * jelzi, hogy ez nem normális funkció, hanem generátor. Íme egy példa a generátorokra:
function* printFruits () {
hozam "Mango";
hozam "Banán";
hozam "Szőlő";
}
const gyümölcs = printFruits ();
console.log (fruit.next ());
Kimenet:
{value: 'Mango', kész: false}
Ebben a példában hozam az iterátor. Amikor hívja a függvényt printFruits ()és nyomtatni fruit.next (), olyan objektumot ad, ahol megkapja az értéket. Az Kész Az állapot azt jelzi, hogy az összes érték ismétlődött -e.
Ismerje meg az adatstruktúrákat az ES6 osztályok használatával a JavaScriptben
A JavaScript ES6 sokat fejlődött a kódolási gyakorlatban. Nem utolsósorban az adatstruktúrák építése az ES6 osztályok használatával. Nyom. pop, és halmozd fel magad a csúcsra, és válj JavaScript -profivá!
A JavaScript ES6 bevezetésével egyedi adatstruktúrák is megjelentek. Íme, hogyan hozhatja létre és alkalmazhatja őket.
Olvassa tovább
- Programozás
- JavaScript
- Kódolási tippek
- Programozás
Unnati lelkes full stack fejlesztő. Szeret projekteket építeni különböző programozási nyelvek segítségével. Szabadidejében szeret gitározni, és főzési rajongó.
Iratkozzon fel hírlevelünkre
Csatlakozz hírlevelünkhöz, ahol technikai tippeket, értékeléseket, ingyenes e -könyveket és exkluzív ajánlatokat találsz!
Feliratkozáshoz kattintson ide