Partage
  • Partager sur Facebook
  • Partager sur Twitter

Cours Apprenez à coder avec JavaScript

    23 avril 2020 à 22:00:32

    Salut, 

    Pour tout ceux qui ne vois pas leurs livres et qui ont l'impression que ça ne marche pas, pensez à bien faire la dernière partie de mettre une valeur supérieur puis la valeur du nombre de page max et ça pour tout les livres.

    Cordialement

    • Partager sur Facebook
    • Partager sur Twitter
      27 avril 2020 à 14:00:08

      Bonjour à tous,

      Pour l'activité finale du cours (appli de bibliothèque), le carrousel ne fonctionne pas chez moi (comme chez d'autres d'après les messages précédents).

      Mais en passant les livre en "lu" avec la méthode décrites dans l'énoncé, on peut atteindre chacun des trois livres.

      Aussi, pour finir l'exercice : DESACTIVEZ VOTRE BLOQUEUR DE PUBS!!

      Pour ma part AddBlock sous Chrome m'a bloqué la pop-up et j'ai relu et relu mon code en cherchant une erreur alors qu'il n'y en a pas.... 

      • Partager sur Facebook
      • Partager sur Twitter
        28 avril 2020 à 19:35:53

        Bonjour/bonsoir,

        je viens ici pour que l'on éclaire ma lanterne. Je suis actuellement en train de suivre le cours, et à un moment dans la partie "Exprimer une condition" du chapitre "Ajoutez des conditions" je n'ai pas compris l’exemple affiché lors de la présentation du type booléen, voici la capture de la partie concernée :

        J'ai sûrement mal compris mais si une condition est fausse, pourquoi elle "ne seront jamais exécutées"? Normalement si elle est fausse, cela exécute les instructions contenues dans le bloc de code non?

        Pouvez-vous m'éclairer svp :) 

        Cordialement,

        • Partager sur Facebook
        • Partager sur Twitter
          29 avril 2020 à 21:36:23

          Bonsoir , j'espere que vous vous portez bien moi je viens de terminer tout les  chapitres et valider mes quiz mais  je n'ai pas obtenu de certificat. j'aimerais savoir la cause.
          • Partager sur Facebook
          • Partager sur Twitter
            30 avril 2020 à 10:30:54

            Mlitika a écrit:

            Bonjour/bonsoir,

            je viens ici pour que l'on éclaire ma lanterne. Je suis actuellement en train de suivre le cours, et à un moment dans la partie "Exprimer une condition" du chapitre "Ajoutez des conditions" je n'ai pas compris l’exemple affiché lors de la présentation du type booléen, voici la capture de la partie concernée :

            J'ai sûrement mal compris mais si une condition est fausse, pourquoi elle "ne seront jamais exécutées"? Normalement si elle est fausse, cela exécute les instructions contenues dans le bloc de code non?

            Pouvez-vous m'éclairer svp :) 

            Cordialement,

            Si ce qu'il y a entre parenthèse après le if est vrai, alors ce qui est entre accolade juste après sera exécuté, sinon ce ne sera pas exécuté.

            Dans le premier cas il a écrit "true" entre parenthèse, c'est donc vrai tout le temps (il n'y a pas de variable ni rien, c'est vrai), donc le code sera toujours exécuté.

            Dans le second cas il a écrit "false" entre parenthèse, c'est donc faux tout le temps (toujours pas de variable ni rien), donc le code dans les accolades qui suivent ne pourra jamais être exécuté, car false reste faux.

            (précision: j'ai mis true et false entre guillemets car je cite l'exemple, note bien que lui n'a pas mis des guillemets dans les parenthèses de la condition. Ce sont donc bien les opérateurs booléens VRAI et FAUX, et non les chaînes de caractères "true" et "false")

            • Partager sur Facebook
            • Partager sur Twitter
              4 mai 2020 à 12:27:09

              function getBoutonSouris(code) {
                  var bouton = "inconnu";
                  switch (code) {
                  case 0: // 0 est le code du bouton gauche
                      bouton = "gauche";
                      break;
                  case 1: // 1 est le code du bouton du milieu
                      bouton = "milieu";
                      break;
                  case 2: // 2 est le code du bouton droit
                      bouton = "droit";
                      break;
                  }
                  return bouton;
              }
              
              
              function infosSouris(e) {
                  console.log("Evènement souris : " + e.type + ", bouton " +
                      getBoutonSouris(e.button) + ", X : " + e.clientX + ", Y : " + e.clientY);
              }
              
              // Gestion du clic souris
              document.addEventListener("click", infosSouris);
              Bonjour tout le monde!
              Cet exemple du cour créer des pages web interactives pour moi ça ne fonctionne que dans le cas du clic gauche!!
              Salutation ;      Taib el khatib
              • Partager sur Facebook
              • Partager sur Twitter
              1. Comprendre le web ,

              2. Apprenez à créer des sites web avec HTML5 et CSS3

              3. comprendre les algorithmes ,

              4. apprenez à programmer en JavaScript.

              5. Créer des pages web interactive avec JavaScript
              6. Écrivez du JavaScript pour le web
              7. Dynamisez vos pages web avec JavaScript
              8. Apprenez à programmer en Python
                10 mai 2020 à 0:17:48 - Message modéré pour le motif suivant : Merci d'utiliser le bouton code du forum pour insérer votre code


                  10 mai 2020 à 10:36:00

                  function getBoutonSouris(code) {
                      var bouton = "inconnu";
                      switch (code) {
                      case 0: // 0 est le code du bouton gauche
                          bouton = "gauche";
                          break;
                      case 1: // 1 est le code du bouton du milieu
                          bouton = "milieu";
                          break;
                      case 2: // 2 est le code du bouton droit
                          bouton = "droit";
                          break;
                      }
                      return bouton;
                  }
                   
                   
                  function infosSouris(e) {
                      console.log("Evènement souris : " + e.type + ", bouton " +
                          getBoutonSouris(e.button) + ", X : " + e.clientX + ", Y : " + e.clientY);
                  }
                   
                  // Gestion du clic souris
                  document.addEventListener("click", infosSouris);
                  • Partager sur Facebook
                  • Partager sur Twitter
                  1. Comprendre le web ,

                  2. Apprenez à créer des sites web avec HTML5 et CSS3

                  3. comprendre les algorithmes ,

                  4. apprenez à programmer en JavaScript.

                  5. Créer des pages web interactive avec JavaScript
                  6. Écrivez du JavaScript pour le web
                  7. Dynamisez vos pages web avec JavaScript
                  8. Apprenez à programmer en Python
                    10 mai 2020 à 14:54:01

                    Seb D a écrit:

                    Si ce qu'il y a entre parenthèse après le if est vrai, alors ce qui est entre accolade juste après sera exécuté, sinon ce ne sera pas exécuté.

                    Dans le premier cas il a écrit "true" entre parenthèse, c'est donc vrai tout le temps (il n'y a pas de variable ni rien, c'est vrai), donc le code sera toujours exécuté.

                    Dans le second cas il a écrit "false" entre parenthèse, c'est donc faux tout le temps (toujours pas de variable ni rien), donc le code dans les accolades qui suivent ne pourra jamais être exécuté, car false reste faux.

                    (précision: j'ai mis true et false entre guillemets car je cite l'exemple, note bien que lui n'a pas mis des guillemets dans les parenthèses de la condition. Ce sont donc bien les opérateurs booléens VRAI et FAUX, et non les chaînes de caractères "true" et "false")


                    Ah mais je comprend mieux tout à coup l'exemple! J'avais pas compris la nuance présenté dans le cours! Je te remercie :)

                    -
                    Edité par Mlitika 10 mai 2020 à 14:54:36

                    • Partager sur Facebook
                    • Partager sur Twitter
                      11 mai 2020 à 0:36:40

                      Bonjour,

                      Le premier exercice du chapitre "Travaillez sur les paramètres et les valeurs de retour" demande de créer une fonction somme.

                      OK dans l'absolu. Sauf qu'en regardant la correction je m'aperçois qu'il y a deux éléments : "ratings" et "rating" et je ne comprends pas d'où il sortent. En dehors de cette partie de code, je ne vois pas où ils ont étés déclarés et/ou initialisés.

                      => bref en gros je ne comprends pas du tout la logique.
                      Quelqu'un peut m'aider ?
                      Merci
                      // Modify the code here
                      // ======================
                      
                      const calculateAverageRating = (ratings) => {
                        if(ratings.length === 0) {
                          return 0;
                        }
                        let sum = 0;
                        for (let rating of ratings) {
                          sum += rating;
                        }
                        return sum / ratings.length;
                      }
                      // ======================
                      const tauRatings = [5, 4, 5, 5, 1, 2];
                      const colinRatings = [5, 5, 5, 4, 5];
                      
                      const tauAverage = calculateAverageRating(tauRatings);
                      const colinAverage = calculateAverageRating(colinRatings);
                      
                      if (tauAverage && colinAverage) {
                        document.querySelector('#tau-score').innerText = tauAverage.toFixed(1) + ' stars';
                        document.querySelector('#colin-score').innerText = colinAverage.toFixed(1) + ' stars';
                        document.querySelector('#clara-score').innerText = `${calculateAverageRating([]) === 0 ? 'No ratings' : calculateAverageRating([]) + ' stars'}`
                      }



                      • Partager sur Facebook
                      • Partager sur Twitter
                        11 mai 2020 à 12:28:48

                        si tu travail avec un tableau vaut mieux utiliser la boucle for of et for in et même foreach (le même principe)

                        ici tu as utiliser la boucle for of / syntaxe= for(element of tableauContenantElement)

                        la variable element va remplacer tout les cases du tableaux un par un , donc dans la boucle tu dois mettre un code qui va s'exécuter sur la variable element pour qu'il soit exécuter sur les éléments du tableau

                        ;)

                        Taib el khatib

                        • Partager sur Facebook
                        • Partager sur Twitter
                        1. Comprendre le web ,

                        2. Apprenez à créer des sites web avec HTML5 et CSS3

                        3. comprendre les algorithmes ,

                        4. apprenez à programmer en JavaScript.

                        5. Créer des pages web interactive avec JavaScript
                        6. Écrivez du JavaScript pour le web
                        7. Dynamisez vos pages web avec JavaScript
                        8. Apprenez à programmer en Python
                          3 juin 2020 à 17:19:58

                          Bonjour à tous,

                          J'espère que vous allez bien.

                          Pour ma part je suis complètement bloqué sur la dernière activité Restful Reading. J'ai beau essayer de mettre des valeurs exactes ou des valeurs supérieures au nombre de page de mes livres, rien n'y fait, ça ne marche toujours pas. Je n'ai aucun bloqueur de pub sous chrome. J'ai aussi essayé sur Explorer et c'est pire car rien ne s'affiche.

                          Seul le premier livre s'affiche (à savoir Rayuela de Julio Cortazar).

                          La navigation entre les livres ne marche pas, aucun livre ne se glisse dans la partie "Lus" et je ne vois pas le mot secret :(.

                          Voici mon code: 

                          export class Book {
                          
                          	constructor(title, author, description, pages, currentPage, read) {
                          		this.title = title;
                          		this.author = author;
                          		this.description = description;
                          		this.pages = pages;
                          		this.currentPage = currentPage;
                          		this.read = false;
                          	}
                          
                          	readBook(page) {
                          		console.log("Vous êtes à la page : " + currentPage);
                          		if (page < 1 || page > this.pages) {
                          			return 0;
                          		} else if (page >= 1 && page < this.pages) {
                          			this.currentPage = page;
                          			return 1;
                          		} else {
                          			this.currentPage = page;
                          			this.read = true;
                          			return 1;
                          		}
                          
                          	}
                          
                          }
                          
                          let book1 = new Book("Rayuela", "Julio Cortazar", "Récits d'Oliveira", 600, 300, false);
                          let book2 = new Book("O Jérusalem", "Edouard Lapierre", "Création de l'état d'Israel", 650, 20, false);
                          let book3 = new Book("O alquimista", "Paulo Coelho", "Voyage d'un jeune homme", 200, 20, false);
                          
                          /*book1.readBook(200);
                          book2.readBook(650);*/
                          
                          export const books = [book1, book2, book3];

                          Voici l'image de ce qui s'affiche:

                          Sauriez-vous m'aider ?

                          Merci

                          -
                          Edité par Maruti1995 3 juin 2020 à 17:21:43

                          • Partager sur Facebook
                          • Partager sur Twitter
                            13 juin 2020 à 10:17:34

                            Bonjour, dans le cours apprendre a coder en javascript il y a un erreur dans la boucle while chapitre: 

                            Utilisez la bonne boucle pour répéter les tâches (for, while)

                            let seatsLeft = 10;
                            let passengersStillToBoard = 8;
                            
                            let passengersBoarded = 0;
                            
                            while (seatsLeft > 0 || passengersStillToBoard > 0) {
                                passengersBoarded++; // un passager embarque
                                passengersStillToBoard--; // donc il y a un passager de moins à embarquer
                                seatsLeft--; // et un siège de moins
                            }
                            
                            console.log(passengersBoarded); // imprime 8, car il y a 8 passagers pour 10 sièges ERREUR le résultat est dix mais pas 8 ou il faut changer l opérateur logique et qu' il  soit &&
                            
                             

                            ERREUR le résultat est dix mais pas 8 ou il faut changer l opérateur logique et qu' il  soit
                            bonne journée
                            • Partager sur Facebook
                            • Partager sur Twitter
                              14 juin 2020 à 14:03:51

                              selon ton code, tant qu'il y a des places libres ou tant qu'il y a des passagers a faire embarquer, ont fait embarquer un passager. s'il n'y a plus de passager a faire embarquer ou s'il n'y a plus de places, ont stop la boucle puis ont affiche le résultat.

                              le console log affiche le nombre de passagers qui ont embarqué, donc 8 est correct. si ont remplace le "ou" par "et", ont continuera de faire embarquer des passagers même s'il n'y a plus de sièges libres, ou ont fera embarquer des passagers qui n'existe pas pour remplir les sièges restant

                              la boucle doit s’arrêter seulement s'il n'y a plus de passagers a embarquer OU s'il n'y a plus de place

                              Bonne journée
                              • Partager sur Facebook
                              • Partager sur Twitter
                                17 juin 2020 à 16:38:24

                                Bonjour,

                                Donc je suis le cours "Apprenez à programmer avec Javascript " et j'observe la solution d'un exercice sur codepen.io et je lis ceci : 

                                class Episode {
                                  constructor(title, duration, minutesWatched) {
                                    this.title = title;
                                    this.duration = duration;
                                    
                                    if (duration === minutesWatched) {
                                      this.hasBeenWatched = true;
                                    } else if (minutesWatched < duration) {
                                      this.hasBeenWatched = false;
                                    }
                                    
                                  }
                                }
                                

                                Je m'étonne du fait qu'on est pas besoin d'utiliser le mot-clé " this " pour déclarer la propriété "minutesWatched".

                                Dans le constructor de la class Episode on a (title, duration, minutesWatched)  

                                et on a bien :

                                this.title = title;

                                this.duration = duration;

                                après, avec une condition si (if) on va déclarer la propriété " this.hasBeenWatched ", qui dépend d'une condition sur " minutesWatched ". 

                                Ma question est pourquoi, mais pourquoi on n'utilise pas le mot clé " this " pour "minutesWatched" ?

                                Le cours :  


                                https://openclassrooms.com/fr/courses/6175841-apprenez-a-programmer-avec-javascript/6278948-choisissez-la-condition-appropriee-pour-controler-le-deroulement-de-votre-programme-if-else-switch

                                Le codepen : 

                                https://codepen.io/nicolaspatschkowski/pen/rNVRjPg

                                • Partager sur Facebook
                                • Partager sur Twitter

                                « Ce n'est pas le plus fort de l'espèce qui survit, ni le plus intelligent. C'est celui qui sait le mieux s'adapter au changement » ! Charles Darwin.

                                  17 juin 2020 à 17:07:46

                                  this permet d'acceder aux attributs de l'objet

                                  minutesWatched n'est pas un attribut mais un argument envoyé a la class pour la construction de l'objet "episode"
                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    17 juin 2020 à 19:34:32

                                    ah ok, merci beaucoup ! Oui je comprends beaucoup mieux.

                                    donc:  " minutesWatched " n'est pas une propriété de l'objet, juste un argument qui sert à construire une autre propriété de l'objet ("hasBeenWatched");

                                    Et effectivement, si je tape le code suivant :

                                    class Episode {
                                      constructor(title, duration, minutesWatched) {
                                        this.title = title;
                                        this.duration = duration;
                                      
                                        if (duration === minutesWatched) {
                                          this.hasBeenWatched = true;
                                        } else if (minutesWatched < duration) {
                                          this.hasBeenWatched = false;
                                        }  
                                      }
                                    }
                                    
                                    let abraham = new Episode ("abraham", 55, 45);
                                    
                                    
                                    
                                    

                                    Donc là je passe les valeurs suivantes comme arguments : "abraham", 55 et 45  dans le constructor de la class Episode pour construire un nouvel objet correspondant à la variable block-level let : "abraham" .

                                    Cet objet "abraham" est une instance de la class Episode.

                                    Donc je passe les valeurs suivantes en guise d'arguments :

                                    title = "abraham";

                                    duration = 55;

                                    minutesWatched = 45.

                                    Si je fais un console.log pour vérifier les propriétés de l'objet "abraham" (instance de la class Episode), j'obtiens :

                                    Instance d'une class

                                    Donc là, on voit bien que l'argument " minutesWatched " n'est pas une propriété de l'objet "abraham", c'est un argument qui a juste servi à construire une autre propriété ( "this.hasBeenWatched") de la façon suivante :

                                    if (duration === minutesWatched) {
                                          this.hasBeenWatched = true;
                                        } else if (minutesWatched < duration) {
                                          this.hasBeenWatched = false;
                                        }

                                    ok, bon je parle un peu tout haut en faisant ce post mais c'est pour m'aider à mieux comprendre, en espérant que ça en aide éventuellement d'autres. 

                                    Est-ce que dans ma façon de décrire tout cela, j'utilise le bon vocabulaire ? Est-ce que je commet des erreurs, ou des approximations ?

                                    • Partager sur Facebook
                                    • Partager sur Twitter

                                    « Ce n'est pas le plus fort de l'espèce qui survit, ni le plus intelligent. C'est celui qui sait le mieux s'adapter au changement » ! Charles Darwin.

                                      19 juin 2020 à 9:52:56

                                      @julien chemin rentre le code dans une console tu t apercevras que ça donne bien dix et pas 8

                                      ou donne dix (car true OU false donne true)

                                      && donne 8

                                      test les deux dans une console :)

                                      https://gyazo.com/d7015203eb8221420a428475f031e786

                                      Bonne journée

                                      -
                                      Edité par CédricGodard 19 juin 2020 à 9:53:55

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        20 juin 2020 à 18:28:04

                                        aie, effectivement tu a raison, j'ai mal réfléchit. la boucle doit continuer tant que les deux variable sont supérieur a zéro, donc il faut bien un "et" pour le while. pour me justifier un peu, j'ai cru avec ton premier message que le resultat donné etait 8, donc j'ai fait le raccourcit sans trop réfléchir que le code etait bon :^p
                                        • Partager sur Facebook
                                        • Partager sur Twitter
                                          21 juin 2020 à 18:16:50

                                          Salut a tous, aidez moi svp pour le dernier exercice du JS... 
                                           pour cette partie : 
                                               Ouvrez un terminal, naviguez vers le dossier du projet, et exécutez  npm install  . Une fois l'installation terminée, exécutez  npm start  pour démarrer le serveur de développement local. Votre navigateur devrait s'ouvrir automatiquement ; si ce n'est pas le cas, ouvrez votre navigateur et allez à http://localhost:8081.
                                           Elle s'execute pas tout seule et le lien ne passe pas sur mon navigateur  PLZ AIDEZ MOI 
                                          • Partager sur Facebook
                                          • Partager sur Twitter

                                          Dans mon monde, chaque lettre tapé est un sentiment ressentis...

                                            14 juillet 2020 à 13:50:00

                                            Bonjour,

                                            Quelle est la différence de ce cours avec le cours "apprenez à développer en javascript" ?

                                            Il me semble que beaucoup de modules sont redondants. Quel cours est le plus complet SVP ?

                                            Merci

                                            -
                                            Edité par gacaron 19 juillet 2020 à 23:59:46

                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                              15 juillet 2020 à 14:52:22

                                              bonjour a tous

                                              pour le dernier exercice, ou c est ecrit:

                                                 Ouvrez un terminal, naviguez vers le dossier du projet, et exécutez  npm install  . Une fois l'installation terminée, exécutez  npm start  pour démarrer le serveur de développement local. Votre navigateur devrait s'ouvrir automatiquement ; si ce n'est pas le cas, ouvrez votre navigateur et allez à http://localhost:8081.

                                              ca ne passe pas. quelquun a pu executer ces instructions?

                                              • Partager sur Facebook
                                              • Partager sur Twitter
                                                25 juillet 2020 à 15:56:24

                                                Bonjour a tous,

                                                Le sujet a déjà été abordé à plusieurs reprises mais je ne trouve pas de solution...

                                                Mon code ressemble à beaucoup d'autres mais l'application ne passe pas mon livre dans la partie lue lorsque j'actualise le nombre la page actuelle avec le nombre de pages exact du livre.

                                                Quelqu'un pourrait-il tester mon code et me dire si ça fonctionne chez lui ?

                                                Merci beaucoup.

                                                Voici mon code :

                                                export class Book {
                                                    constructor(title, author, description, pages, currentPage) {
                                                        this.title = title;
                                                        this.author = author;
                                                        this.description = description;
                                                        this.pages = pages;
                                                        this.currentPage = currentPage;
                                                        this.read = false;
                                                    }
                                                
                                                    readBook(page) {
                                                        if (page < 1 || page > this.pages) {
                                                            return 0;
                                                        } 
                                                        else if (page >= 1 && page <= this.pages) {
                                                            this.currentPage = page;
                                                            return 1;
                                                        } 
                                                        else if (page === this.pages) {
                                                            this.currentPage = page;
                                                            this.read = true;
                                                            return 1;
                                                        }
                                                    }
                                                }
                                                    
                                                let firstBook = new Book('Livre1', 'Auteur1', 'resume1', 320, 5);
                                                let secondBook = new Book('Livre2', 'Auteur2', 'resume2', 563, 52);
                                                let thirdBook = new Book('Livre3', 'Auteur3', 'resume3', 123, 12);
                                                
                                                export const books = [firstBook, secondBook, thirdBook];


                                                EDIT: problème résolu, il faut que je sois un peu plus attentif lol! Bloqué pour un signe '<=' au lieu d'un '<'...

                                                -
                                                Edité par HervéTouzanne 26 juillet 2020 à 18:58:02

                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                  3 août 2020 à 11:22:58

                                                  Bonjour à tous ,

                                                  Je suis actuellement bloqué car le code d'erreur n'apparait pas et les flèches du carrousel ne fonctionnent pas,

                                                  par contre les livres s'affichent bien , la barre de progression est bien visible et ils vont bien dans lues si ils ont été lu à 100%,  ,

                                                  est- ce que je dois changer un paramètre dans l'index pour que les flèches du carrousel fonctionnent,

                                                  Voici mon code ci dessous ,

                                                  export class Book {
                                                      constructor(title, author,description, pages, currentPage,read){
                                                          this.title = title;
                                                          this.author = author;
                                                          this.description =description;
                                                          this.pages= pages;
                                                          this.currentPage= currentPage;
                                                          this.read = read; 
                                                      }
                                                      
                                                      readBook(page){
                                                          if (page<1 || page>this.pages){
                                                          return 0;
                                                          }else if (page>=1 && page < this.pages){
                                                          this.currentPage = page;
                                                          return 1;
                                                          }else if (page === this.pages){
                                                          this.currentPage = page;
                                                          this.read= true;
                                                          return 1;
                                                          }
                                                      }
                                                  };
                                                  
                                                  const firstBook = new Book ('histoire du sport', 'Thierry Terret', 'sport',300,0,false);
                                                  const secondBook = new Book ('il etait une fois la terre','Yann Arhtus Bertrand', 'photographie', 600,0,false);
                                                  const thirdBook  = new Book ('john Lennon. une vie', 'Philip Norman','biographies',200, 0,false);
                                                  
                                                  export const books = [firstBook,secondBook,thirdBook];

                                                  Merci d'avance,

                                                  • Partager sur Facebook
                                                  • Partager sur Twitter
                                                    4 août 2020 à 15:34:17

                                                    Salut, j'ai également le même problème avec la page qui s'éxécute bien, mais le carrousel qui ne fonctionne pas ainsi que le message de fin qui ne s'affiche pas.

                                                    J'ai essayé de désactiver le bloqueur de pubs comme certains et aussi de tester avec des valeurs plus hautes etc.. (pas sur d'avoir bien compris cette méthode), comme dit en page 61.

                                                    export class Book {
                                                        constructor(title, author, description, pages, currentPage, read) {
                                                            this.title = title;
                                                            this.author = author;
                                                            this.description = description;
                                                            this.pages = pages;
                                                            this.currentPage = currentPage;
                                                            this.read = read;
                                                        }
                                                        readBook(page) {
                                                            if (page < 1 || page > this.pages) {
                                                                return 0;
                                                            } else if (page >= 1 && page < this.pages) {
                                                                this.currentPage = page;
                                                                return 1;
                                                            } else if (page == this.pages) {
                                                                this.currentPage = page;
                                                                this.read = true;
                                                                return 1;
                                                            }
                                                        }
                                                    }
                                                    
                                                    let newDanseMacabre = new Book("La Danse macabre", "Marie-Bernadette Dupuy", "Lara prépare son retour au Venezuela, où elle espère retrouver une existence apaisée auprès d'Olivier et de leur fille, Loanne.", 200, 0, false);
                                                    let newHarryQuebert = new Book("La vérité sur l'Affaire Harry Quebert", "Joël Dicker", "À la fin de l’été 1975, à Aurora, dans le New Hampshire, Nola Kellergan, une jeune fille de 15 ans, disparaît dans des conditions mystérieuses.", 400, 0, false);
                                                    let newRougeBresil = new Book("Rouge Brésil", "Jean-Christophe Rufin", "La conquête du Brésil par les Français est un des épisodes les plus extraordinaires et les plus méconnus de la Renaissance.", 1200, 0, false);
                                                    
                                                    
                                                    export const books = [newDanseMacabre, newHarryQuebert, newRougeBresil];

                                                    Merci d'avance ^^ !

                                                    -
                                                    Edité par monsirgaufre 4 août 2020 à 15:36:26

                                                    • Partager sur Facebook
                                                    • Partager sur Twitter
                                                      6 août 2020 à 11:07:22

                                                      Bonjour tout le monde, je voudrais savoir quel genre d'application peut on concevoir avec javascript ?
                                                      • Partager sur Facebook
                                                      • Partager sur Twitter
                                                        6 août 2020 à 13:05:21

                                                        Bonjour,

                                                        Débutant en programmation, je suis le cours JS afin de m'améliorer.

                                                        Je rencontre un problème sur l’exercice des fonctions (chapitre 3 exercice 1) :

                                                        Le code de correction est lui suivant :

                                                        // Modify the code here
                                                        // ======================
                                                        
                                                        const calculateAverageRating = (ratings) => {
                                                        
                                                          if(ratings.length === 0) {
                                                            return 0;
                                                          }
                                                          
                                                          let sum = 0;
                                                          for (let rating of ratings) {
                                                            sum += rating;
                                                          }
                                                          
                                                          return sum / ratings.length;
                                                        
                                                        }
                                                        
                                                        // ======================
                                                        
                                                        const tauRatings = [5, 4, 5, 5, 1, 2];
                                                        const colinRatings = [5, 5, 5, 4, 5];
                                                        
                                                        const tauAverage = calculateAverageRating(tauRatings);
                                                        const colinAverage = calculateAverageRating(colinRatings);
                                                        
                                                        if (tauAverage && colinAverage) {
                                                          document.querySelector('#tau-score').innerText = tauAverage.toFixed(1) + ' stars';
                                                          document.querySelector('#colin-score').innerText = colinAverage.toFixed(1) + ' stars';
                                                          document.querySelector('#clara-score').innerText = `${calculateAverageRating([]) === 0 ? 'No ratings' : calculateAverageRating([]) + ' stars'}`
                                                        }

                                                        Je comprends le code qui a été utilisé et ce qu'il fait. Par contre, ce que je ne comprends pas c'est comment les valeurs des constantes "tauRatings" et "colinRatings" peuvent se retrouver dans le calcul de "sum" alors que l'on y fait apparemment jamais référence... Est-ce le terme "ratings" qui est un genre de terme "générique" qui permettrait d'apporter les valeurs dans le calcul ?

                                                        Merci pour votre aide !

                                                        • Partager sur Facebook
                                                        • Partager sur Twitter
                                                          13 août 2020 à 9:29:51

                                                          Salut @FlorianBerneval

                                                          tu y fais référence à la ligne 24 et 25

                                                          const tauAverage = calculateAverageRating(tauRatings);
                                                          const colinAverage = calculateAverageRating(colinRatings);

                                                          Tu passes en paramètre de ta fonction "calculateAverageRating" tes tableaux "tauRatings" et "colinRatings"

                                                          ta boucle for (ligne 11) va parser les éléments de ton tableau et les additionner.

                                                          en fait c'est une autre façon d'écrire des boucles

                                                          ça correspond à : 

                                                          for( let i = 0, i < ratings.length , i++)

                                                          ratings = tableau // rating = 1 élément du tableau

                                                          ton return va renvoyer la moyenne des éléments calculés dans tes tableaux

                                                          ++

                                                          -
                                                          Edité par Grégoire-M 13 août 2020 à 9:36:55

                                                          • Partager sur Facebook
                                                          • Partager sur Twitter
                                                            17 août 2020 à 14:19:50

                                                            Merci pour ta réponse ! J'étais arrivé à cette conclusion aussi depuis le temps mais c'est toujours mieux d'en avoir la confirmation.
                                                            • Partager sur Facebook
                                                            • Partager sur Twitter

                                                            Cours Apprenez à coder avec JavaScript

                                                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                                            • Editeur
                                                            • Markdown