Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1639 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [Javascript] héritage entre classe dans des fichiers différents

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Javascript] héritage entre classe dans des fichiers différents

n°1709079
Amonchakai
Posté le 28-03-2008 à 09:18:03  profilanswer
 

Bonjour,
   
   Je suis en train de travailler sur un projet dans lequel je cherche a faire de la programmation objet avec javascript. Et j'avoue que j'ai quelques petit soucis avec l'héritage entre "classes".
 
Voila mon problème :  
si je fait un seul fichier Test.js et que je met ça

Code :
  1. function A() {
  2.    this.f = function() {
  3.       alert('appel de la fonction f de la classe A');
  4.       this.z();
  5.    }
  6.    this.z = function() {
  7.       alert('appel de la fonction z de la classe A');
  8.    }
  9. }
  10. function B() {
  11.    this.g = function() {
  12.       alert('appel de la fonction g de la classe B');
  13.       this.z();
  14.    }
  15.    this.z = function() {
  16.       alert('appel de la fonction z de la classe B');
  17.    }
  18. }
  19. B.prototype = new A;


 
dans ce cas là, pas de problème : f est bien définie pour B et son appel appelle bien z de B. le linkage dynamique a bien lieu.
 
Par contre, comme je vais avoir plein de classes je vais pas tout mettre dans le même fichier (on va éviter de faire du code de goret). Donc je voulais mettre chacune de mes classes dans des fichiers différents.
 
je fais donc le fichier A.js contenant :
 

Code :
  1. function A() {
  2.    this.f = function() {
  3.       alert('appel de la fonction f de la classe A');
  4.       this.z();
  5.    }
  6.    this.z = function() {
  7.       alert('appel de la fonction z de la classe A');
  8.    }
  9. }


 
et le fichier B.js contenant :
 

Code :
  1. document.write("<script type='text/javascript' src='./A.js'></script>" );
  2. function B() {
  3.    this.g = function() {
  4.       alert('appel de la fonction g de la classe B');
  5.       this.z();
  6.    }
  7.    this.z = function() {
  8.       alert('appel de la fonction z de la classe B');
  9.    }
  10. }
  11. B.prototype = new A;


 
et là, il ne reconnais plus A : il me met dans le fichier B : "A is not defined". Donc du coup, j'ai plus d'héritage et la fonction f n'existe plus pour B...
Ce qui me laisse perplexe c'est que si je cherche a utiliser A au sein de B, genre si dans g j'instancie A, il 'y a pas de problème : la classe A est bien reconnue...
 
Est ce que vous voyez où se trouve mon erreur ?
Merci pour votre aide :)

mood
Publicité
Posté le 28-03-2008 à 09:18:03  profilanswer
 

n°1709091
FlorentG
Unité de Masse
Posté le 28-03-2008 à 09:41:07  profilanswer
 

N'utilise pas de document.write, mais un bon vieux <script> ?
 
(d'ailleurs faut éviter le document.write, utilise plutôt du DOM ou la propriété innerHTLML d'un élément)

n°1709105
Amonchakai
Posté le 28-03-2008 à 10:00:22  profilanswer
 

Ok, merci pour l'information :) Je me suis mis que très récemment à Javascript donc merci de me prévenir de ce principe.
 
Mais par contre j'ai toujours le même problème : même avec la simple utilisation des balises <script> il me sort toujours la même erreur...  
 
Mais juste pour m'assurer : le principe est bon non ? Vous avez déjà utilisé des relation d'héritage entre des classes se trouvant dans des fichiers différents ?
 
Merci de votre aide


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [Javascript] héritage entre classe dans des fichiers différents

 

Sujets relatifs
question héritage CSSlien entre 2 fichiers excel sous vba
Friend declaration error dans une classe Setquestion sur le javascript "discret"
[JAVASCRIPT] A la recherche d'un livre complet...Intéraction Php (mysql) et Javascript
[Résolu][Ubuntu] Copie automatique de fichiers au branchement clé usbDéplacer des fichiers
aide prog javascriptDébutant Scilab ouverture de fichiers
Plus de sujets relatifs à : [Javascript] héritage entre classe dans des fichiers différents


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR