Partage
  • Partager sur Facebook
  • Partager sur Twitter

Cours Apprenez à coder avec JavaScript

    23 janvier 2022 à 3:18:50

    NadfriJS a écrit:

    Salut, j'ai fait une video correction si ca t'interesse:

    https://www.youtube.com/watch?v=TJCCMKRE-ss


    Bonjour, j'essaye de faire l'exercice avec ce code là : 

    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 hamlet = new Book('Hamlet','Shakespeare','description Hamlet',288,288,true);
    let othello = new Book('Othello','Shakespeare','description Othello',256,10,false);
    let antigone = new Book('Antigone','Anouilh','description antigone',120,120,true);
    let aneantir = new Book('Anéantir','Houellebeck','description aneantir',700,0,false);
    
    export const books = [];
    books.push(hamlet,othello,antigone,aneantir);
    

    Et tout se passe bien, j'ai tous les livres dans "Restful Reading", avec la jauge qui se remplit quand je met un nombre de page plus grand et les livres qui vont dans la rubrique "Lu". Mais je n'ai pas la réponse qui s'affiche à la fin... j'ai juste le carrousel gris et vide comme ça :

    capture d'écran exercice JavaScript

    Est-ce que vous avez une idée de ce que mon code a ou n'a pas pour que ça marche complètement ?

    • Partager sur Facebook
    • Partager sur Twitter
      29 janvier 2022 à 11:43:31

      Salut Florian, désolé pour la réponse tardive, le problème vient du fait que tu as déjà dans tes paramètres des livres qui sont en état "lu" et la current page sur la dernière. Donc impossible de faire les étapes de test demandés.

      Essai avec ces paramètres :

      let hamlet = new Book('Hamlet','Shakespeare','description Hamlet',288,10,false);
      let othello = new Book('Othello','Shakespeare','description Othello',256,10,false);
      let antigone = new Book('Antigone','Anouilh','description antigone',120,10,false);
      
       
      export const books = [];
      books.push(hamlet,othello,antigone);



      • Partager sur Facebook
      • Partager sur Twitter

      La meilleure solution est toujours la plus simple. Ma chaîne Youtube [Tutos pour débutants]

        16 mars 2022 à 15:08:45 - Message modéré pour le motif suivant : Toute forme de publicité est interdite


          10 juin 2022 à 17:58:30

          Quizz final (https://openclassrooms.com/fr/courses/6175841-apprenez-a-programmer-avec-javascript/exercises/3801)

          Aucune "alerte navigateur indiquant le mot à répondre", ce malgré l'exercice réussi (carrousel mis à jour, etc) et plusieurs tentatives :-(

          Donc réponse au pif, bonne réponse relevée, et retour dans 24h pour valider le quizz ...

          Sinon concernant l'ensemble du cours : divers 'hics' ça et là, par exemple l'utilisation de arrow functions sans avoir expliqué auparavant la notation

          (https://openclassrooms.com/fr/courses/6175841-apprenez-a-programmer-avec-javascript/6279979-deboguez-votre-fonction)

          • Partager sur Facebook
          • Partager sur Twitter
            22 juin 2022 à 14:43:49

            NadfriJS a écrit:

            Salut Florian, désolé pour la réponse tardive, le problème vient du fait que tu as déjà dans tes paramètres des livres qui sont en état "lu" et la current page sur la dernière. Donc impossible de faire les étapes de test demandés.

            Essai avec ces paramètres :

            let hamlet = new Book('Hamlet','Shakespeare','description Hamlet',288,10,false);
            let othello = new Book('Othello','Shakespeare','description Othello',256,10,false);
            let antigone = new Book('Antigone','Anouilh','description antigone',120,10,false);
            
             
            export const books = [];
            books.push(hamlet,othello,antigone);


            Merci NadfriJS pour la correction ! Je suis allé voir ta chaine Youtube, c'est marrant, j'ai aussi travaillé dans la fibre optique et j'entame à présent ma reconversion dans l'IT.

            Bravo à toi d'avoir persévéré !!!

            -
            Edité par A|ex 22 juin 2022 à 14:44:10

            • Partager sur Facebook
            • Partager sur Twitter
              22 juin 2022 à 23:23:43

              L image du cours de JS par Will Alexander, section 'boucles for, for in, for of et while' est terriblement bizarre non ? 
              Surtout que le code associé mentionne : 
              const numberOfPassengers = 10;
              for (let i = 0; i < numberOfPassengers; i++) {
                 console.log("Passager embarqué !");
              -- le i est strictement inférieur à 10 pas inf égal
              -- la boucle semble retourner à i = 0, après avoir été incrémentée.

              -
              Edité par WorldWideGreg 22 juin 2022 à 23:24:42

              • Partager sur Facebook
              • Partager sur Twitter
                22 juin 2022 à 23:39:45

                Si l'on suit le schéma que tu montres il y aurait 11 et non 10 passagers, à la limite s'il avait fait ++i au lieu de i++ le schéma resterait correct

                Je me base sur la partie de la boucle que tu montres peut être y a il une autre action faites plus bas

                • Partager sur Facebook
                • Partager sur Twitter

                yasakani no magatama

                  22 juin 2022 à 23:46:40

                  WorldWideGreg a écrit:

                  L image du cours de JS par Will Alexander, section 'boucles for, for in, for of et while' est terriblement bizarre non ? 
                  Surtout que le code associé mentionne : 
                  const numberOfPassengers = 10;
                  for (let i = 0; i < numberOfPassengers; i++) {
                     console.log("Passager embarqué !");
                  -- le i est strictement inférieur à 10 pas inf égal
                  -- la boucle semble retourner à i = 0, après avoir été incrémentée.

                  -
                  Edité par WorldWideGreg il y a 9 minutes

                  Salut,

                  Je débute aussi mais pour moi le "si oui" représente les cas de 1 à 9, quand tu seras à 10 tu basculeras sur "si non".

                  Le i++ veut dire que tu incrémentes de i de +1.

                  https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Operators/Increment

                  il y a quelques raccourcis dans ce cours, j'ai plusieurs fois regardé sur le net pour comprendre.

                  A+

                  -
                  Edité par A|ex 22 juin 2022 à 23:47:36

                  • Partager sur Facebook
                  • Partager sur Twitter
                    23 juin 2022 à 0:03:33

                    Alex si on se base sur le schéma de son prof i part de 0 et la condition passera à faux uniquement si i supérieur a 10 donc 11donc on ira bien de 0 à 10 donc 11 passagers.

                    Ce que représente la boucle js elle recevra 10 passager soit il s'est trompé soit la boucle agit sur i et on le voit pas dans le morceau partagé 

                    • Partager sur Facebook
                    • Partager sur Twitter

                    yasakani no magatama

                      25 juin 2022 à 18:49:17

                      r Pour moi sur ce schéma, la boucle remet a zéro la variable i avant chaque itération puis la compare à 10 et l'incrémente avant de la remettre à zero etc etc... cela bouclera donc à l'infini ... le bout de code fourni ensuite fonctionne comme un vraie boucle qui bouclera 10 fois. c'est pourquoi j'ai mis ce message, je me regarde que peu les picto et je préfère me référer à du code pour mieux comprendre. et clairement là, l'image est pas terrible pour la compréhension.\

                      • Partager sur Facebook
                      • Partager sur Twitter
                        27 juin 2022 à 0:26:38

                        PhilippeDubois13 a écrit:

                        Quizz final (https://openclassrooms.com/fr/courses/6175841-apprenez-a-programmer-avec-javascript/exercises/3801)

                        Aucune "alerte navigateur indiquant le mot à répondre", ce malgré l'exercice réussi (carrousel mis à jour, etc) et plusieurs tentatives :-(

                        Donc réponse au pif, bonne réponse relevée, et retour dans 24h pour valider le quizz ...

                        Sinon concernant l'ensemble du cours : divers 'hics' ça et là, par exemple l'utilisation de arrow functions sans avoir expliqué auparavant la notation

                        (https://openclassrooms.com/fr/courses/6175841-apprenez-a-programmer-avec-javascript/6279979-deboguez-votre-fonction)

                        j'ai exactement le même problème ... c'est fatiguant, même si je ne débute pas complètement le dev, je suis neophyte sous JS et ce cours est un bon gruyère, meme si ça aide a se faire la main et des recherches google, là le dernier exo ça devient chiant de passer des heures a tout refaire pour se rendre compte que le problème vient de la sandbox...

                        ps: j'ai eu de la chance sur le choix de la réponse au hasard... 

                        -
                        Edité par WorldWideGreg 27 juin 2022 à 0:30:26

                        • Partager sur Facebook
                        • Partager sur Twitter
                          2 juillet 2022 à 4:27:57

                          Bonjour , je bloque sur un truc concernant le cours sur le Java Script, en effet , je n'ai pas compris à servent le " " quand ils sont tout seul , sans rien entre les guillemets .

                          Et ça me bloque un peu pour la suite,
                          mais j'ai l'impression que ca sert à crée une valeur , mais après je vois ou on peut la nommer , ou peut être ça se nomme dans la ligne qui suit ?

                          • Partager sur Facebook
                          • Partager sur Twitter
                            4 juillet 2022 à 15:31:01

                            HamidElMaalmi a écrit:

                            Bonjour , je bloque sur un truc concernant le cours sur le Java Script, en effet , je n'ai pas compris à servent le " " quand ils sont tout seul , sans rien entre les guillemets .

                            Et ça me bloque un peu pour la suite,
                            mais j'ai l'impression que ca sert à crée une valeur , mais après je vois ou on peut la nommer , ou peut être ça se nomme dans la ligne qui suit ?


                            Salut hamid, 
                            Je ne sais pas exactement de quelle partie du cours tu parles. cependant " " renvoie un espace qui sera intégré dans la chaine de caractères. 
                            Si il s'agit des espaces situé dans la correction d un exercice sur les fonctions, celui où le corrigé donne des fonctions fléchées qui n'ont jamais été abordées dans le cours je ne sais pas pourquoi il a mit des espace car j'ai réussi à faire fonctionner mon code de manière propre sans fonction fléchées.

                            Désolé d'avoir mit du temps a te répondre, ne suivant plus ces formations je ne reviens plus trop sur OCR.

                            Bon courage et bon code

                            • Partager sur Facebook
                            • Partager sur Twitter
                              5 juillet 2022 à 2:00:25

                              Bonjour je bloque sur le P6, j'en suis à la fin et j'aurais besoin d'aide 

                               J’ai des erreurs que je ne comprends pas, même après plusieurs vérification de mon code:

                              Je peux créer 1 sauce, toutes les sauces s’affichent sur mon frontend, mais quand je clique sur la page d’une sauce, il n’y a rien qui s’affiche et je ne peux donc, ni modifier, ni supprimer la sauce créé j’ai un message d’erreur dans ma console (cf image), se rapportant a un fichier du frontend : single-sauce.component.ts ???

                              Et à l’adresse localhost :3000, j’ai un « CANNOT GET » +300/api/sauces : « error »,

                              je pense que le probleme vient de là, non ?

                              Une idée d’où cela pourrait venir? 1 coup de main serait le bienvenu car là je ne sais plus quoi faire, ca fait des jours que je tourne en rond…

                              Et comme on dit, d’autres yeux avertis peuvent peut-être trouver l’erreur que je n’ai pas vu….

                              D’avance merci pour votre aide

                              • Partager sur Facebook
                              • Partager sur Twitter

                              GD

                                5 juillet 2022 à 10:11:27

                                Bonjour

                                sauce.userLiked indéfini là où tu tentes d'y accéder

                                ensuite pour l'accès à ta page quelle est le code de la page en question ? Tu n'y autorises peut être qu'une requête post ? 

                                • Partager sur Facebook
                                • Partager sur Twitter

                                yasakani no magatama

                                  7 juillet 2022 à 12:02:50

                                  est ce que je peux faire

                                  const hoursPerDay = 24;

                                  const minutesPerHour = 60;

                                  et mettre 

                                  const (a la place de let car le resultat d une operation avec seulement des constantes est une constante) minutesPerDay = (hoursPerDay * minutesPerHour);

                                  merci si a la potencielle personne qui me repondra

                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    5 août 2022 à 10:42:37

                                    Bonjour,

                                    J'ai un souci avec l'exercice sur la Récursivité dans le cours "Apprenez à programmer avec JavaScript", partie 3, chapitre "Découvrez la récursivité : l'appel de fonctions à l'intérieur d'elles-mêmes" (https://openclassrooms.com/fr/courses/6175841-apprenez-a-programmer-avec-javascript/6280087-decouvrez-la-recursivite-lappel-de-fonctions-a-linterieur-delles-memes)

                                    Quand j'ai entré ma réponse dans le CodePen de l'exercice (https://codepen.io/quentin-laurent/pen/QWGRKMo) j'avais systématiquement un résultat "undefined".

                                    Ne comprenant pas, j'ai finalement jeté un coup d'œil à la correction (https://codepen.io/quentin-laurent/pen/oNYVwbb) qui était sensiblement la même chose que ma réponse. Pour vérifier, j'ai copié le JS correction dans le JS exercice et il renvoie la même erreur.

                                    Je pense qu'il s'agit d'une erreur dans une partie cachée du CodePen.

                                    Autre remarque, mais pas gênant : le CodePen de l'exercice et celui de sa correction affichent "Caclculer" au lieu de "Calculer".

                                    -
                                    Edité par Ben_M 5 août 2022 à 10:44:44

                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      25 août 2022 à 10:05:52

                                      Hello,

                                      J'ai une question concernant la partie sur la refactorisation du code. Un des premiers exemples crée une fonction pour afficher un message d'accueil pour les utilisateurs. Je dois avouer que je ne comprends pas du tout la première ligne :

                                      Je suppose qu'il dois s'agir d'une façon "condensée" de définir une fonction...

                                      Quelqu'un pourrait m'éclairer sur le fonctionnement de cette ligne ?

                                      Je comprends ainsi : const nomDeLaFonction = (paramètre) => {fonction}

                                      -> pourquoi const ?

                                      -> pourquoi le mot clé function n'apparait pas ?

                                      -> à quoi servent les signes = et => ?

                                      const sendWelcomeMessageToUser = (user) => {
                                      if (user.online) {
                                      if (user.accountType === "normal") {
                                             console.log("Hello " + user.name + "!");
                                      } else {
                                            console.log("Welcome back premium user " + user.name + "!");
                                      }
                                      }
                                      }
                                      
                                      sendWelcomeMessageToUser(firstUser);
                                      
                                      sendWelcomeMessageToUser(secondUser);
                                      
                                      sendWelcomeMessageToUser(thirdUser);


                                      D'avance merci pour votre aide :) 

                                      Edit : j'ai fini par trouver un article sur les différentes déclarations : 
                                      https://fr.acervolima.com/differentes-manieres-d-ecrire-des-fonctions-en-javascript/

                                      (
                                      mais ceci dit si quelqu'un a envie de m'expliquer en quoi c'est mieux d'avoir une variable const pour appeler une fonction... :'( )

                                      -
                                      Edité par Yubae 25 août 2022 à 10:25:26

                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        25 août 2022 à 13:20:06

                                        Bonjour a proprement parler si l'un est meilleur que l'autre pas forcément. Mais chacun a ses spécificités.

                                        my_func() ;

                                        function my_func() {}

                                        va fonctionner par exemple contrairement à

                                        my_func()

                                        du aux différences de portée 

                                        const my_func() = ()  => {}

                                        la syntaxe fleche peut avoir son avantage dans le rétrécissement du code et dans la lisibilité au niveau des fonctions de map par exemple

                                        array.map(item => item * 2)

                                        plus court et rapide a lire que

                                        array.map(function(item){ return item *2;})

                                        -
                                        Edité par zvheer 25 août 2022 à 13:21:59

                                        • Partager sur Facebook
                                        • Partager sur Twitter

                                        yasakani no magatama

                                          6 septembre 2022 à 13:30:26

                                          Bonjour,

                                          J'ai moi-même galéré au dernier exo avec les livres lus et leur progression, en fait la subtilité est dans l'énoncé, il faut faire les actions dans l'ordre et livre par livre :


                                          Pour tester votre méthode instance readBook , suivez ces instructions pour trois livres

                                          Livre 1: mettez à jour la page actuelle avec une page valable qui est inférieure au nombre total de pages

                                          puis

                                          Livre 2: mettez à jour la page actuelle avec une page valable inférieure au nombre total de pages

                                          puis

                                          Livre 3: mettez à jour la page actuelle avec une page valable inférieure au nombre total de pages

                                          Ensuite :

                                          Livre 1 : mettez à jour la page actuelle avec exactement le nombre de pages total du livre (le livre devrait disparaître du carousel et apparaître dans la liste "Lus")

                                          puis 

                                          Livre 2 : mettez à jour la page actuelle avec exactement le nombre de pages total du livre (le livre devrait disparaître du carousel)

                                          puis 

                                          Livre 3 : mettez à jour la page actuelle avec exactement le nombre de pages total du livre (le livre devrait disparaître du carousel)

                                          Et l'alerte apparaît ;)

                                          -
                                          Edité par NOLOGIN 6 septembre 2022 à 13:44:06

                                          • Partager sur Facebook
                                          • Partager sur Twitter
                                            7 septembre 2022 à 22:34:41

                                            Bonjour à tous, 

                                            Je viens vers vous car  j'ai l'impression de ne rien comprendre, surtout à partir de l'exercice sur les fonctions .

                                            https://openclassrooms.com/fr/courses/6175841-apprenez-a-programmer-avec-javascript/6279223-travaillez-sur-les-fonctions

                                            si vous aviez des astuces pour comprendre cette logique, car j'ai l'impression que le niveau n'est pas crescendo.

                                            • Partager sur Facebook
                                            • Partager sur Twitter
                                              7 septembre 2022 à 23:19:40

                                              Bonjour, dire exactement où ça bloque serait mieux. Mais bon en soit la notion de fonctions n'est pas compliquée.

                                              Une fonction sert à contenir un bloc de code. Le but est de pouvoir executer ce blog de code en faisant appel à la fonction au lieu de copier / coller partout où on en a besoin.

                                              Pour faire l'exemple imaginons qu'on veut quelque chose qui mettra en majuscule la première lettre de tous les mots d'une phrase (capitalize) on aura un bout de code qui ressemblera à (la compréhension du code n'est pas obligatoire)

                                              let phrase = "Salut j'apprend sur Oc"
                                              
                                              //notre code serait donc
                                              
                                              phrase = phrase.split(' ').map(word => word.charAt(0).toUpperCase() + word.slice(1) ).join(' ')

                                              maintenant sur une seule phrase c'est bien mais si on aimerait appliquer ce bout de code à plusieurs phrases comment on fait ? copier / coller. Ce qui va créer de la redondance dans le code . A la place on peut creer une fonction qui fera cette action (retenir qu'une fonction sert à faire une action particuliere) puis l'appeller elle sur chaque phrases

                                              on peut definir une fonction de deux manières

                                              const my_func = () => {}

                                              function my_func() {} // cette syntaxe te conviendra mieux en débutant

                                              Notre code devient donc

                                              function capitalize(sentence)
                                              
                                              {
                                              
                                              return sentence.split(' ').map(word => word.charAt(0).toUpperCase() + word.slice(1) ).join(' ')
                                              
                                              // grace a return tu retournes donc la nouvelle phrase que l'appelant de la fonction pourra traiter comme il souhaite
                                              
                                              }
                                              
                                              //ou
                                              
                                              const capitalize = (sentence) => sentence.split(' ').map(word => word.charAt(0).toUpperCase() + word.slice(1) ).join(' ')

                                              maintenant on peut appeller la fonction sur n'importe quelle phrase et via return elle retournera la phrase avec les premières lettres majuscules

                                              console.log(capitalize('test de ma fonction')  )

                                              let ma_nouvelle_phrase = capitalize('mon ancienne phrase')

                                              -
                                              Edité par zvheer 7 septembre 2022 à 23:20:23

                                              • Partager sur Facebook
                                              • Partager sur Twitter

                                              yasakani no magatama

                                                8 septembre 2022 à 20:02:47

                                                Par ailleurs, le cours nous apprend a créer des classes mais pour être honnête je ne sais pas si c'est utile aux néophytes (comme moi) qui se lancent dans JS.
                                                .
                                                Pour être plus clair, tout le crédit qui est donné aux classes c'est que l'on peut créer des méthodes d'instances et des méthodes statiques, mais en a t'on vraiment besoin quand on débute en JS ?
                                                .
                                                Par exemple, on peut très bien remplacer les classes (qui sont en fait des fonctions...) par des fonctions constructeur si le but est (comme dans ce cours) de simplement créer des instances d'objets :
                                                .
                                                class BankAccount {
                                                   constructor(owner, balance) {
                                                      this.owner = owner;
                                                      this.balance = balance;
                                                   }
                                                   showBalance() {
                                                      console.log("Solde: " + this.balance + " EUR");
                                                   }
                                                }
                                                .
                                                Peut être remplacé par :
                                                function BankAccount(owner, balance)
                                                {
                                                	this.owner = owner;
                                                	this.balance = balance;
                                                	this.ShowBalance = function() { console.log("Solde: " + this.balance + " EUR"); };
                                                }
                                                .
                                                Plus propre, plus lisible et peut-être même plus facile à maintenir à terme ?
                                                .
                                                Sans parler du fait que si vous importez / créez une classe après que celle-ci soit appelée dans votre code, vous aurez une erreur undefined, tandis qu'une fonction on peut la déclarer et l'appeler de n'importe où dans le code.
                                                .
                                                Je pense que les classes sont plus utiles pour regrouper un nombre important de fonctions et/ou si vous avez absolument besoin d'utiliser des méthodes statiques, mais c'est à mon sens une utilisation plus avancée de JS, pas certain que ce soit un sujet pour un débutant ?
                                                .
                                                Qu'en pensez-vous ?

                                                -
                                                Edité par NOLOGIN 8 septembre 2022 à 20:04:59

                                                • Partager sur Facebook
                                                • Partager sur Twitter
                                                  8 septembre 2022 à 20:28:56

                                                  Tu tombes dans l'erreur que je reproche souvent aux gens qui débutent ( je ne sais pas si c'est ton cas)

                                                  Les cours ne sont pas faits en tous cas j'espere pour intégrer des notions dans la tête. Je m'explique.

                                                  Un cours (pour debutant) est fait pour acquérir les fondamentaux du langage, que la personne doit entrainer de son côté, ne pas s'en tenir aux exercices et lui ouvrir la porte aux fonctionnalités plus avancées. 

                                                  Après ses bases acquises ( ex: comment declarer une variable, instructions conditionnelles ect) on présente des notions utiles (ici les class), quand on débute justement on peut à base du savoir qu'on pense avoir acquis faire de mauvaises choses et rester dedans car on a pas conscience de ce qui peut etre fait d'autres, a reflechir comme ça on reste débutant à vie tout simplement. 

                                                  Si en finissant ton cours js tu as appris à faire 

                                                  for(let i =0; i < tableau.length;i++)

                                                  c'est ce que tu utiliseras pour parcourir un tableau tant que tu n'as pas conscience de forEach qui est fait pour

                                                  Savoir que les class existent à titre d'exemple t'emmenera a comme tu le fais maintenant chercher à savoir quelles en ont les utilité... ( en js les framework par exemple) une autre utilité plus générale est que la notion de class est global à la programmation, avoir base de cette notion facilite l'apprentissage des bases ailleurs. 

                                                  "Par exemple, on peut très bien remplacer les classes (qui sont en fait des fonctions...) par des fonctions constructeur si le but est (comme dans ce cours) de simplement créer des instances d'objets"

                                                   Le cours introduit aux notions, il ne va pas te demander d'implémenter un mvc quand tu viens de découvrir les class et surtout decouvrir de nouvelles notions si tous le cours s'en tient aux fonctions on tourne en rond

                                                  >être remplacé par :

                                                  1
                                                  2
                                                  3
                                                  4
                                                  5
                                                  6
                                                  function BankAccount(owner, balance)
                                                  {
                                                  this.owner = owner;
                                                  this.balance = balance;
                                                  this.<strong>ShowBalance</strong> = function() { console.log("Solde: " this.balance + " EUR"); };
                                                  }
                                                  Plus propre, plus lisible et peut-être même plus facile à maintenir à terme
                                                  Non du tout quand on commence a imbriquer des fonctions l'une dans l'autre c'est tout sauf lisible, transpose ce genre d'utilisation dans un réel projet. 
                                                  > Sans parler du fait que si vous importez / créez une classe après que celle-ci soit appelée dans votre code, vous aurez une erreur undefined, tandis qu'une fonction on peut la déclarer et l'appeler de n'importe où dans le code.
                                                  c'est simplement mal coder, les erreurs du développeur ne sont pas les erreurs des fonctionnalités. La portée est une notion de base.
                                                  Qu'en pensez-vous ?
                                                  En bref les cours pour débutants sont fait pour faire progresser le débutant lui apprendre les notions de base et lui faire découvrir les notions utiles sinon la personne stagnera. 
                                                  Après sur le fait qu'on peut en js remplacer les class par les fonctions, dans une utilisation basique oui c'est vrai surtout vu la liberté que js offre aux fonctions
                                                  • Partager sur Facebook
                                                  • Partager sur Twitter

                                                  yasakani no magatama

                                                    8 septembre 2022 à 20:53:14

                                                    Merci pour ta réponse, effectivement t'as raison
                                                    • Partager sur Facebook
                                                    • Partager sur Twitter
                                                      16 septembre 2022 à 15:34:46

                                                      Bonjour à tous ! Je n'avais pas vu qu'un sujet avait été créer pour ce cours, je viens donc poser mon problème ici, que j'avais posé sur un sujet que j'avais créer il y a 3 jours, avec seulement 1 seule réponse qui s'est retrouvé supprimé car la personne n'avait pas mis le code dans le bouton code prévu à cet effet. Je me permets donc de poser mon problème ici, avec des screenshots et du code bien sur, en esperant que vous puissiez m'aider. Merci d'avance pour vos réponses.

                                                      Bonjour à tous. Je suis au TP de validation du module "Apprenez à programmer avec JavaScript, ou le but est d'aider à réaliser un guide de suivi de livres lues ou non. J'ai réalisé le code de celui-ci, que je vais vous montrer juste ici : 

                                                      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;
                                                      
                                                            if(page > 0 && < this.pages) {
                                                              this.currentPage = page;
                                                              return 1;
                                                            }
                                                            if (page == this.pages) {
                                                              this.currentPage = page;
                                                              this.read = true;
                                                              return 1;
                                                            }
                                                         }
                                                      }
                                                      
                                                      const livre1 = new Book("Les Chevaliers d'Emeraude Tome 1: Le Feu dans le Ciel", "Anne Robillard", "Fantasy",325, 131, false);
                                                      
                                                      const livre2 = new Book("Les Chevaliers d'Emeraude Tome 2: Les Dragons de L'Empreur Noir", "Anne Robillard", "Fantasy",435 , 0, false);
                                                      
                                                      const livre3 = new Book( "Les Chevaliers d'Emeraude Tome 3: Piege au Royaume des Ombres", "Anne Robillard", "Fantasy",425 , 0, false);
                                                      
                                                      export const books = [livre1, livre2, livre3];



                                                      Ce code doit afficher les livres dans un carrousel, que je vais vous montrer ici :

                                                      Le problème est qu'il n'y en a pas, il n'y a aucune erreur affiché dans le code, mais pourtant les livres ne s'affichent pas dans le carrousel. Pourriez-vous m'aider s'il vous plaît ? Merci d'avance pour vos réponses. Si vous avez des questions ou des demandes n'hésitez pas je vous répondrai le mieux possible.

                                                      Cordialement,

                                                      Florian

                                                      Update : J'ai modifié mon code car j'ai regardé la vidéo de NadfriJS et j'ai vu qu'il y avait quelques erreurs que j'ai modifié. Mais malgré la modification de mon code, qui est le même que celui de sa vidéo,hormis les livres qui sont différents, rien ne change, le carrousel ne se mets toujours pas à jour. Si vous voyez des erreurs dans le code je suis preneur. Merci d'avances pour vos réponses.

                                                      -
                                                      Edité par Florian0985 16 septembre 2022 à 17:05:09

                                                      • Partager sur Facebook
                                                      • Partager sur Twitter
                                                        25 septembre 2022 à 18:19:57 - Message modéré pour le motif suivant : Merci d'utiliser le bouton code du forum pour insérer votre code


                                                          11 octobre 2022 à 15:07:34 - Message modéré pour le motif suivant : Merci d'utiliser le bouton code du forum pour insérer votre code


                                                            18 octobre 2022 à 13:11:13

                                                            bonjour, il y a une petite erreur je pense dans l'ennoncé de l'exercice du deuxieme chapitre (https://openclassrooms.com/fr/courses/5543061-ecrivez-du-javascript-pour-le-web/5577476-accedez-aux-elements-du-dom) :

                                                            ...

                                                            4. Récupérez les éléments de type li qui sont dans une liste ul ayant la classe  important . Cette liste doit elle-même être dans un article (article ) ;

                                                            ...

                                                            il me semble qu'on doit recuperer "le premier element", et non pas "les elements", etant donné la question 5 : "En reprenant le résultat de la tâche précédente, récupérez l'élément li suivant de la liste ul ." -> si on a recuperé "les elements" avec `.querySelectorAll()` il n'y a pas vraiment "d'element suivant"

                                                            • Partager sur Facebook
                                                            • Partager sur Twitter
                                                              2 novembre 2022 à 16:18:10

                                                              Edit : Ok c'est juste que la page ne s'actualisait pas automatiquement contrairement à tous les autres exercices que j'ai fait auparavant... voilà, voilà. Je vais me jeter par la fenêtre et je reviens.

                                                              Bonjour,

                                                              J'ai un petit soucis sur l'exercice des conditions dans le chapitre 2 sur l'introduction au JS.

                                                              C'est le fameux exercice où on doit mettre en conditions si age<ageMajorite on refuse l'accès. Et bien il m'arrive quelque chose de plutôt étrange.

                                                              Sur codepen, là où a lieu l'exercice, et bien quand je tapais le bon code dans la page codepen de l'exercice (pen/poNQNdY) rien ne se passait, le script ne s'exécutait pas.

                                                              Du coup j'ai copié-collé le code entier du javascript de la page solution codepen (pen/eYBQoMr) dans la page du codepen de l'exercice, me disant que je m'étais ptêt gourré quelque part dans mon code.

                                                              Et bah vous savez quoi ? Le script ne s'exécute toujours pas. Alors que le code fonctionne sur la page solution du codepen, mais pas sur la page codepen de l'exercice. Je précise que j'ai supprimé tout mon code JS et ensuite remplacé par le code entier de la page solution.

                                                              Est-ce que quelqu'un peut éclairer ma lanterne ? C'est codepen qui déconne ou bien ?

                                                              Pourquoi est-ce que cela fonctionne sur la page solution du codepen mais pas sur la page exercice du codepen, alors que les deux codes sont identiques ?

                                                              -
                                                              Edité par MathieuGérard2 2 novembre 2022 à 16:25:12

                                                              • 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