Indice boucle for avec then.. catch
Bonjour à tous,
Dans le cadre d'un projet étudiant, je souhaite lister les différents événements possibles dans une salle .
Je possède 3 salles, dont le nom et le numéro sont contenus dans un Array .
A l'aide d'une boucle for, je tente de lister chaque évènement (nommé: event) de chaque salle .
Au début de la boucle (voir console.log : log1): Je parcoure bien chacune des salles (Salle_1, Salle_2, Salle_3)
Cependant au sein de cette boucle for, se trouve la fonction cal.Events.list, (Script Google API), qui utilise .then .catch ,
Je m'aperçois (voir console.log: log2) que seule la dernière salle est parcourue (Salle_3) .
Je pense que ma boucle for est plus rapide d'execution que la fonction cal.Events.List, pour cause: le .then .catch (supposition) .
Pouvez-vous m'éclairer à ce sujet ?
Merci d'avance
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| listeSalles = {
'Salle_1': 'chambre',
'Salle_2': 'cuisine',
'Salle_3': 'salle_de_bain'
};
for(var mesSalles in listeSalles)
{
let eventsArray = [];
console.log("Log 1:" + mesSalles); //Dans ce log apparaissent: "Salle_1", "Salle_2", "Salle_3" (Très bien !)
cal.Events.list(listeSalles[mesSalles], params2, {})
.then(json => {
console.log("Log 2:" + mesSalles); //Dans ce log apparait: "Salle_3", "Salle_3", "Salle_3" !
for (let i = 0; i < json.length; i++) {
let event = {
id: json[i].id,
nom: json[i].nom
};
eventsArray.push(event);
console.log("Id:" + event.id);
console.log("Nom:" + event.nom);
}
// return eventsArray;
}).catch(err => {
console.log('Error: ', err.message);
});
} |