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 : Sélectionner tout - Visualiser dans une fenêtre à part
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);
});
}