JavaScript-da aýlawda asinhron surat ýüklemek

Suratlaryň ýollary massiwde saklansyn:

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

Biz bu suratlary aýlawda ýükläp bileris:

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

Kod owadan we callback hell ýagdaýy bolmady, ýöne, biz öz iki kynçylygymyza dolandy: suratlaryň tertibi kepillendirilmeýär we ähli suratlaryň ýüklenen wagtyny tutup bolmaýar.

We bu ýagdaýda çözüm ýok: aýlawy işletmek, içinde asinhron funksiýany ulanmak, soňra aýlawyň ähli funksiýalarynyň gutaran wagtyny tutup bolmaýar. Ýa-da size şol wagt gerek däl we ýokarda görkezilen kod size laýyk gelýär, ýa-da callback hell-e hoş geldiňiz.

Ýöne, göwnüňiz dargamaly däl - kynçylygyň çözümi promise-ler arkaly mümkin, olary biz indiki sapaklarda öwreneris.