⊗jsSpACILL 161 of 294 menu

Асинхроно вчитување на слики во циклус во JavaScript

Нека патеките до сликите се чуваат во низа:

let arr = ['img1.png', 'img2.png', 'img3.png'];

Можеме да ги вчитаме овие слики во циклус:

for (let path of arr) { loadImage(path, function(image, err) { document.body.append(image); }); }

Кодот изгледа убав и без callback hell, сепак, се вративме на нашите два проблема: редоследот на сликите не е гарантиран и невозможно е да се улови моментот на вчитување на сите слики.

И нема решение во оваа ситуација: невозможно е да се стартува циклус, да се користи асинхрона функција внатре во него, а потоа да се улови моментот кога сите функции од циклусот ќе завршат. Или вам не ви треба да го фатите овој момент и горенаведениот код ќе ви одговара, или добредојдовте во callback hell.

Но, не треба да се обесхрабрувате - решението на проблемот е возможно преку promises, кои ќе ги учиме во следните лекции.

Македонски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние користиме колачиња за работата на веб-страната, анализа и персонализација. Обработката на податоци се врши во согласност со Политиката за приватност.
прифати ги сите прилагоди одбиј