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 :

Array + fonction + variable passée en paramètre contenant le nom d'un array


Sujet :

JavaScript

  1. #1
    Membre habitué Avatar de MelkInarian
    Profil pro
    Inscrit en
    Février 2007
    Messages
    260
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 260
    Points : 144
    Points
    144
    Par défaut Array + fonction + variable passée en paramètre contenant le nom d'un array
    Bonjour à toutes et à tous,
    Grand débutant, je souhaite faire un site (local pour le moment) qui sera une BDD de jeu de rôle D&D V3.5
    voici mon fichier race.js
    qui se compose de X tableaux de 3 éléments et d'une fonction qui doit servir à retourner le bon tableau en fonction du paramètre reçu
    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
    		/* =======================================================================*/
    		//  Race         		|     Avant		|       Après		|Titre    	  //	
    		/* =======================================================================*/
    			efface = new Array("", 					"", 			"")			  //
    			Aarakocra = new Array("RACE.html",    "Aasimar.html",  "Aarakocras")  //
    			Aasimar = new Array("Aarakocra.html", "Aventi.html",   "Aasimars")	  //
    			Aventi = new Array("Aasimar.html",    "Bariaur.html",  "Aventis")	  //
    			Bariaur = new Array("Aventi.html",    "Blarel.html",   "Bariaurs")	  //
    			Blarel = new Array("Bariaur.html",    "Bleu.html",     "Blarels")	  //
    			Bleu = new Array("Bariaur.html",      "Aasimar.html",  "Bleus")		  //
    			//----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
     
     
    			function affiche(race) 
    				{
    					var MaRace = new Array (2);
    					MaRace[0] = race[0];
    					MaRace[1] = race[1];
    					alert(race[0] + " - " + race[1]);
    					alert(MaRace[0] + " - " + MaRace[1]);
    					return MaRace;
    				}
    mon problème est que je n'arrive pas à associer la variable passée à la fonction et mes tableaux.
    mes alert n'affichent que le contenu de la variable passée et non le tableau qu'elle est sensée contenir.
    voici mon appel de fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    		<meta lang="fr" name="keywords" content="D&amp;D, DRS, Donjons, Dragons, Aquila," />
    		<script type="text/JavaScript">
    			var nom = window.location.pathname;
    				nom = nom.split("/");
    				nom = nom[nom.length - 1];
    				nom = nom.substr(0, nom.lastIndexOf("."));
    				nom = nom.replace(new RegExp("(%20|_|-)", "g"), "");
    			var Encadre = new Array(2);
    		</script>
    		<!-- La feuille de styles "base.css" doit être appelée en premier. -->
    		<link rel="stylesheet" type="text/css" href="../0-Res/base.css" media="all" />
    		<link rel="stylesheet" type="text/css" href="../0-Res/DetD.css" media="screen" />
    		<script type="text/JavaScript" src="races.js"></script>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    								<script type="text/JavaScript">
    									Encadre = affiche(nom);
    									alert(Encadre);
    									var avant = Encadre[0];
    									var apres = Encadre[1];
    									document.write("-");
    									document.write(avant);
    									document.write("-");
    								</script>
    Pouvez-vous m'indiquer comment dans ma fonction affecter à la variable reçue le bon tableau?
    Merci

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    ben tu passes un string ... pas un array ...

    donc soit tu ne touches pas à ta fonction mais tu lui passes l'array ...


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Encadre = affiche(window[nom])
    ou tu modifies ta fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    MaRace[0] = window[race][0];
    MaRace[1] = window[race][1]
    ;

  3. #3
    Membre habitué Avatar de MelkInarian
    Profil pro
    Inscrit en
    Février 2007
    Messages
    260
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 260
    Points : 144
    Points
    144
    Par défaut
    Merci SpaceFrog
    Avec window[race][0] mon problème est résolu.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 10/03/2014, 21h54
  2. Réponses: 11
    Dernier message: 01/02/2011, 15h20
  3. Nom d'une variable passée en paramètre à une fonction
    Par cata2 dans le forum Interfaces Graphiques
    Réponses: 1
    Dernier message: 07/09/2007, 09h17
  4. Upload de fichier avec variable passée en paramètre
    Par reservoirdev dans le forum ASP
    Réponses: 2
    Dernier message: 22/04/2006, 16h06
  5. Réponses: 6
    Dernier message: 28/05/2004, 09h39

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