Nuo 2015 m. „EcmaScript6“ (ES6) atnešė daug pažangos „JavaScript“ kodavimo praktikoje. Į „JavaScript“ buvo įtraukta daugybė šiuolaikinių koncepcijų, kurios žymiai pagerino kodavimo patirtį. Šiame straipsnyje sužinosite apie „JavaScript“ iteratorius ir generatorius.
Iteratoriai ir generatoriai yra dvi skirtingos sąvokos, tačiau jie naudojami panašiai. Jie naudojami kartojant „JavaScript“ masyvus ir objektus.
Iteratoriai
Iteratoriai yra tarsi išplėstinės kilpos, kurias galima pristabdyti. Iteratoriai susideda iš Kitas() funkcija, kuri grąžina vertę ir atliktą būseną. The vertės laukas yra tam tikro indekso masyvo vertė. padaryta yra loginė vertė, kuri per ciklą grąžina iteracijos užbaigimo būseną.
Štai pavyzdys, parodantis, kaip kartojasi:
funkcija fruitIter (vaisiai) {
tegul indeksas = 0;
grįžti {
toliau: function () {
grąžos indeksas }
}
}
const fruitArray = ["Mango", "Bananas", "Vynuogės"];
const vaisiai = fruitIter (fruitArray);
console.log (fruit.next (). value);
Išvestis:
Mango
Kai praeini
vaisiaiArray masyvas fruitIter () metodą, jis grąžina iteratorių, saugomą vaisiai kintamasis. The indeksas kintamasis fruitIter () metodas inicijuojamas iki 0. Šis metodas grąžina Kitas() funkcija, kuri padeda kilpomis per masyvą. The Kitas() funkcija tikrina, ar indeksas yra mažesnis nei vaisiaiArray ilgio. Jei taip, jis grąžina du kintamuosius: vaisiaus pavadinimą tuo indeksu ir padaryta būsena. Grąžinant šias vertes, ji taip pat padidina indekso vertę.Norėdami patikrinti, kaip veikia šis metodas, ir išspausdinkite vaisiaus pavadinimą, turite paskambinti Kitas() funkcija ant vaisiai iteratorius ir gauti prieigą prie jo vertės.
Susijęs: Kas yra programavimo funkcija?
Generatoriai
Generatoriai yra panašūs į kartotuvus, tačiau jie grąžina kelias vertes. Šios vertės vadinamos išeigos vertėmis. Generatoriaus funkcijos rašomos naudojant funkcija* sintaksė. * reiškia, kad tai nėra įprasta funkcija, o generatorius. Štai generatorių pavyzdys:
funkcija* printFruits () {
derlius "Mango";
derlius "Bananas";
derlius "Vynuogės";
}
const fruit = printFruits ();
console.log (fruit.next ());
Išvestis:
{value: 'Mango', padaryta: false}
Šiame pavyzdyje derlius yra iteratorius. Kai skambinate funkcijai printFruits ()ir spausdinti fruit.next (), tai suteikia jums objektą, kuriame gaunate vertę. The padaryta būsena nurodo, ar visos vertės buvo pakartotos.
Sužinokite duomenų struktūras naudodami „JavaScript“ ES6 klases
„JavaScript ES6“ atnešė daug pažangos kodavimo praktikoje. Ne mažiau svarbus dalykas yra duomenų struktūrų kūrimas naudojant ES6 klases. Stumti. pop ir suraskite kelią į viršų ir tapkite „JavaScript“ profesionalu!
Įdiegus „JavaScript ES6“, atsirado pritaikytos duomenų struktūros. Štai kaip juos sukurti ir pritaikyti.
Skaityti toliau
- Programavimas
- „JavaScript“
- Kodavimo patarimai
- Programavimas

Unnati yra entuziastingas „full stack“ kūrėjas. Jai patinka kurti projektus naudojant įvairias programavimo kalbas. Laisvalaikiu ji mėgsta groti gitara ir yra maisto gaminimo entuziastas.
Prenumeruokite mūsų naujienlaiškį
Prisijunkite prie mūsų naujienlaiškio, kad gautumėte techninių patarimų, apžvalgų, nemokamų el. Knygų ir išskirtinių pasiūlymų!
Norėdami užsiprenumeruoti, spustelėkite čia