⊗jsSpACPR 156 of 294 menu

Asynkron overførsel af resultat til callback i JavaScript

Lad den asynkrone operation nu, efter den er afsluttet, ikke udskrive noget til konsollen, men i stedet opnå et resultat. Lad det være et array med data, som for eksempel kunne være blevet hentet via AJAX. Men da vi endnu ikke kan arbejde med AJAX, vil vi blot simulere dette:

function make() { setTimeout(function() { let res = [1, 2, 3, 4, 5]; // array med resultat }, 3000); }

Lad os gøre det sådan, at arrayet med resultatet overføres til en parameter i callback'en:

function make(callback) { setTimeout(function() { let res = [1, 2, 3, 4, 5]; callback(res); // overfører resultatet som parameter }, 3000); }

Nu, når vi overfører callback'en til kaldet af funktionen make, kan vi skrive en parameter i den - og i denne parameter vil resultatet af den asynkrone operation lande:

make(function(res) { console.log(res); // vores array });

Udfyld koden til callback'en, så den finder summen af elementerne i arrayet med resultatet.

uzccskkhitr