Tou est dans les gènes 16/30 javascript


#1

Aider moi

si quelqu'un a un code qui fonctionne

function Animal(nom,nombrePattes) {
this.nom = nom;
this.nombrePattes = nombrePattes;
}
Animal.prototype.disNom = function() {
console.log("Bonjour, mon nom est" + this.nom);
}

var pinguin = new Animal("Captain Cook", 2);
pinguin.disNom();

mon code est correcte mais il ne me le confirme pas il affiche :Bonjour, mon nom estCaptain Cook


#2

Tu as omis l'espace entre est et ".

console.log("Bonjour, mon nom est " + this.nom);

#3

mon code n'est pas correcte sais tu pourquoi? ou aurait tu un code valie ? s'il te plait ?

la question 25/30 vous auriez un code valide?


#4

Oui.. C'est quoi le problème?


#5

je voulais afficher mon code mais ce site dis qu'il ne peux pas .


#6

Fait une capture d'écran si possible.


#7

function Personne(prenom,nom,age) {
this.prenom = prenom;
this.nom = nom;
this.age = age;
var compteEnBanque = 7500;

this.getCompte = function() {
// votre code doit retourner le compteEnBanque
return compteEnBanque;
};
}

var john = new Personne('John','Smith',30);
console.log(john.compteEnBanque);

// Créez une nouvelle variable monCompte qui appelle getCompte()
var monCompte=john.getCompte();
console.log(monCompte);
var john = new Personne('John','Smith',30);
console.log(john.returnCompte);
var maMethodeCompte = john.demandeCaissier();
var monCompte = maMethodeCompte();
console.log(monCompte);


#8

Créez une méthode appelée demandeCaissier à l'intérieur de la classe Personne qui retourne la méthode returnCompte. Cela signifie qu'elle retourne la méthode elle-même, et PAS le résultat de l'appel de cette méthode. Vous ne devez PAS mettre de parenthèses après returnCompte.

Dans l'exo 25 la méthode publique getCompte a été remplacée par la méthode privée returnCompte

function Personne(prenom,nom,age) {
   this.prenom = prenom;
   this.nom = nom;
   this.age = age;
   var compteEnBanque = 7500;
  
   var returnCompte = function() {
      return compteEnBanque ;
   };
       
   this.demandeCaissier = function(){
       return returnCompte;
   }
}

#9

quand je valide il m’écris :frowning: Oups, merci de réessayer. Assurez-vous que vous avez correctement défini la fonction demandeCaissier !)


#10

Ca ne fonctionne pas il me met (Oups, merci de réessayer. Assurez-vous que john soit une Personne.)


#11

As tu instancié John?

var john = new Personne('John','Smith',30);

#12

function Personne(prenom,nom,age) {
var john = new Personne('John','Smith',30)
this.prenom = prenom;
this.nom = nom;
this.age = age;
var compteEnBanque = 7500;

var returnCompte = function() {
return compteEnBanque ;
};

this.demandeCaissier = function(){
return returnCompte;
}


#13

L'objet john doit être à l'extérieur de la classe.

function Personne(prenom,nom,age) {
   this.prenom = prenom;
   this.nom = nom;
   this.age = age;
   var compteEnBanque = 7500;
  
   var returnCompte = function() { //privé
      return compteEnBanque ;
   };
       
   this.demandeCaissier = function(){ //publique
       return returnCompte;
   }
}

var john = new Personne('John','Smith',30);

#14

Je comprend mieux , merci beaucoup pour ton aide


#15

Je t'en prie..! :+1:


#16

mais ca marche pas il me dises : Oups, merci de réessayer. Avez-vous modifié le code fourni ou retourné quelque chose d'autre que la méthode elle-même ? Votre code a renvoyé l'erreur suivante : ReferenceError: monCompte is not defined


#17

Tu as dû enlever le code qui se trouvait en bas.. Juste en dessous de l'instanciation..

var john = new Personne('John','Smith',30);
console.log(john.returnCompte);
var maMethodeCompte = john.demandeCaissier();
var monCompte = maMethodeCompte();
console.log(monCompte);