IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Passage de paramètre dans un objet


Sujet :

JavaScript

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    46
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 46
    Points : 42
    Points
    42
    Par défaut Passage de paramètre dans un objet
    Bonjour a tous ,

    voici mon problème j'ai deux objets:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    function Case(){ 
        this.hasShip 	= 	false; 
    	this.wasFire	=	false;
        this.tirer = function(){ 
    		if (this.wasFire == false){
    			this.wasFire = true;
    			return true;
    		}
    		return false;
        } 
    	this.toString = function(){
    		return "hS="+this.hasShip+" WF="+wasFire;
    	}
    } 
     
    function Matrice(){
    	this.tableau;
    	this.init	=	function(){
    		// Initialisation des données
    		this.tableau	=	new Array(10);
    		for ( i=0 ; i < 10 ; i++){
    			this.tableau[i] = new Array(10);
    		}
    		for ( i=0 ; i < 10 ; i++){
    			for ( j=0 ; j < 10 ; j++){
    				this.tableau[i][j] = new Case();
    			}
    		}
    	}
    	this.getCase	=	new function(x,y){
    		return (this.tableau[x][y]);
    	}
    }
    L'objectif est d'avoir une matrice de case.
    Pour l'initialisation tout se passe bien apparemment, mais quand je souhaite
    appeler la fonction getCase ça foire , mon erreur: "x indéfini"

    Je ne comprends pas pourquoi puisque x et y sont passé en paramètre ... peut être ais-je loupé un détail mais lequel ???

    voici l'action qui génère l'erreur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
            tableauSaisieBateau.init();
    	for ( i=0 ; i < 10 ; i++){
    		for ( j=0 ; j < 10 ; j++){
    			alert(tableauSaisieBateau.getCase(i,j).toString());
    		}
    	}
    Merci d'avance pour le coup de main !!

  2. #2
    Expert confirmé
    Avatar de emmanuel.remy
    Inscrit en
    Novembre 2005
    Messages
    2 855
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 855
    Points : 4 045
    Points
    4 045
    Par défaut
    Salut,
    Quelques étourderies:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
      <script type="text/javascript">
    function Case(){ 
       this.hasShip = false; 
       this.wasFire = false;
       this.tirer = function(){ 
    		if (this.wasFire == false){
    			this.wasFire = true;
    			return true;
    		}
    		return false;
        }; 
    	this.toString = function(){
    		return "hS="+this.hasShip+" WF="+ this.wasFire;
    	};
    } 
     
    function Matrice(){
      this.tableau = null;
    	this.init	=	function(){
    		// Initialisation des données
    		this.tableau	= new Array(10);
    		
    		for ( i=0 ; i < 10 ; i++){
    			this.tableau[i] = new Array(10);
    		}
    		for ( i=0 ; i < 10 ; i++){
    			for ( j=0 ; j < 10 ; j++){
    				this.tableau[i][j] = new Case();
    			}
    		}
    	}
    	this.getCase=function(x,y){
    		return (this.tableau[x][y]);
    	}
    }
       
     var tableauSaisieBateau = new Matrice();  
     tableauSaisieBateau.init();
    	for ( i=0 ; i < 10 ; i++){
    		for ( j=0 ; j < 10 ; j++){
    			alert(tableauSaisieBateau.getCase(i,j).toString());
    		}
    	}
     
      </script>
    J'ai mis 5 et 5 sur les bloucles, tu vas vite comprendre pourquoi

    ERE
    Quand une tête pense seule, elle devient folle.

Discussions similaires

  1. passage de paramètre dans un LIKE
    Par dor_boucle dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 26/01/2006, 16h04
  2. passage de paramètres dans l'invite de commande
    Par mr_neness dans le forum Langage
    Réponses: 10
    Dernier message: 18/11/2005, 15h01
  3. Passage de paramètres dans champ hidden
    Par benassis dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 27/05/2005, 01h22
  4. Réponses: 9
    Dernier message: 13/05/2005, 03h13
  5. Passage de paramètres dans une requête imbriquée
    Par DrakkoFR dans le forum Langage SQL
    Réponses: 2
    Dernier message: 07/02/2005, 12h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo