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

  FORUM HardWare.fr
  Programmation

  javascript variable

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

javascript variable

n°23900
lamatrice
Posté le 11-04-2001 à 10:32:43  profilanswer
 

dans une fonction, si j'utilise une variable qui a été défini en dehors de la fonction, ça marche plus,
 
var i;
function toc() {
if (i=="5" ) {
machin bidule }
 
dans mon exemple la variable i est à l'exterieur de la fonction. quant j'appel toc() il ne connait pas i
y a t'il un moyen de definir la variable pour quelle puisse tourner sur toute les futur fuctions

mood
Publicité
Posté le 11-04-2001 à 10:32:43  profilanswer
 

n°23903
nabab
I'm blogging this.
Posté le 11-04-2001 à 10:43:30  profilanswer
 

normalement cela devrait marcher mais le probleme est que tu n'initialise pas ta variable donc pour l'instant je crois que son type est undefined que tu peux tester par la methode typeof


---------------
Ce qui vaut la peine d'être fait vaut la peine d'être bien fait
n°23908
lamatrice
Posté le 11-04-2001 à 10:58:20  profilanswer
 

merci pour ton aide, mais je comprends pas ta réponse !
 
tu veux pas être plus claire dans ce que je dois faire pour que ma variable i soit accessible dans chaque fonction.

n°23909
nabab
I'm blogging this.
Posté le 11-04-2001 à 11:00:30  profilanswer
 

mets var i = "";


---------------
Ce qui vaut la peine d'être fait vaut la peine d'être bien fait
n°23912
lamatrice
Posté le 11-04-2001 à 11:06:11  profilanswer
 

ça change rien, p't être que je con ! voila un exemple de code (qui test la longueur d'une adresse mail)
 
var mailchain,maillong;
mailchain=document.formu.mail.value ;
maillong=mailchain.length ;
 
function testmail() {
alert("votre mail fait " +maillong+ " caractères" );
}

n°23914
petoulachi
A fortiori, brigadier chef
Posté le 11-04-2001 à 11:08:49  profilanswer
 

Bin je connais rien en javascript, mais peut etre faut il que tu declare tes variables en globales.... enfin dans bcp de langage c comme ça alors regarde voir si ya pas un truc du genre

n°23915
darkoli
Le Petit Dinosaure Bleu
Posté le 11-04-2001 à 11:09:49  profilanswer
 

ben la tu vois si ton javascript ne marche pas c'est pas normal. (c'est quoi le naviguateur) ?

n°23917
nabab
I'm blogging this.
Posté le 11-04-2001 à 11:12:04  profilanswer
 

oui car les variables globales c ce que tu fais, il suffit de les declarer en dehors des fonctions ... c assez aisé ..


---------------
Ce qui vaut la peine d'être fait vaut la peine d'être bien fait
n°23919
lamatrice
Posté le 11-04-2001 à 11:19:59  profilanswer
 

j'ai IE5  
et quand je la met dans la fonction ça marche ? c'est spéc hein!

n°23921
wouatouwou​atou
Posté le 11-04-2001 à 11:29:05  profilanswer
 

c ptet paske ton script tu le fais au debut...
et donc document.blabla ... bah i connait pas encore.. enfin, jsuis pas sur mais regarde de ce cote la...
Met des valeur fixe pour tester... du genre variable="toto" et appelle ta fonction.


---------------
"C'est le boulot qu'on ne commence jamais qui est le plus long à terminer"
mood
Publicité
Posté le 11-04-2001 à 11:29:05  profilanswer
 

n°23922
nabab
I'm blogging this.
Posté le 11-04-2001 à 11:30:24  profilanswer
 

Ben wouatouwouatou je lui ai proposé et il dit que cela ne change rien.


---------------
Ce qui vaut la peine d'être fait vaut la peine d'être bien fait
n°23927
speeder06
Posté le 11-04-2001 à 11:35:51  profilanswer
 

lamatrice a écrit a écrit :

dans une fonction, si j'utilise une variable qui a été défini en dehors de la fonction, ça marche plus,
 
var i;
function toc() {
if (i=="5" ) {
machin bidule }
 
dans mon exemple la variable i est à l'exterieur de la fonction. quant j'appel toc() il ne connait pas i
y a t'il un moyen de definir la variable pour quelle puisse tourner sur toute les futur fuctions




 
Hi,
 
Il faut que tu enleves le "var" devant "i", si tu veux que ta variable soit global.
 
@+
 
Bonne suite

n°23929
lamatrice
Posté le 11-04-2001 à 11:38:47  profilanswer
 

bon alors précisons
 
 
je reprends mon bout de code pour être claire
 
var mailchain,maillong,test;  
mailchain=document.formu.mail.value ;  
maillong=mailchain.length ;  
test="toto"
function testmail() {  
alert("votre mail fait " +test+ " caractères" );  
}
ce code fonctionne avec la variable test
mais si dans mon alert je remplace test par maillong, il me dis "indéfini" ?
par contre si je met l'affectation de mailong et de mailchain dans la funcion là il prend le fils de p....
bon voilà je suis content de ne pas être un imbécile .

n°23939
speeder06
Posté le 11-04-2001 à 12:01:30  profilanswer
 

lamatrice a écrit a écrit :

bon alors précisons
 
 
je reprends mon bout de code pour être claire
 
var mailchain,maillong,test;  
mailchain=document.formu.mail.value ;  
maillong=mailchain.length ;  
test="toto"
function testmail() {  
alert("votre mail fait " +test+ " caractères" );  
}
ce code fonctionne avec la variable test
mais si dans mon alert je remplace test par maillong, il me dis "indéfini" ?
par contre si je met l'affectation de mailong et de mailchain dans la funcion là il prend le fils de p....
bon voilà je suis content de ne pas être un imbécile .




 
 
Dans ce cas c est tout a fait normal.
 
Le fonctionnement est le suivant :
La page HTML est interprete pas le navigateur.
Donc ds le tag JAVACSRIPT, tout ce qui n est pas fonction javascript est execute.
Donc :
mailchain=document.formu.mail.value ;  
maillong=mailchain.length ;  
est execute. Mais bien sur au debut, ta variable mail est pas definie, puisque ton tag input est definie apres.
 
Si tu veux pas l affichage "undefined" il faut que tu mettes ton tag JAVASCRIPT apres le tag INPUT.
 
Mais ca ne marchera toujours pas puisque, a chaque fois, qui tu vas executer ta fonction, la chaine maillong aura la valeur, a l interpretation de la page (cad vide);
Donc tu es oblige de la mettre ds ta fonction :
 
mailchain=document.formu.mail.value ;  
maillong=mailchain.length ;  
 
et ca marche
 
@+
 
Bonne suite

n°23940
nabab
I'm blogging this.
Posté le 11-04-2001 à 12:04:18  profilanswer
 

speeder06> Mets d'ou tiens tu cette information, le mot var n'est qu'une methode de declaration, methode propore à chaque langage, cela n'a jamais eu un qq conque rapport avec la definition de varaibles globales. simplement il est certain qu'il ne faut l'utiliser qu'une seule fois pour une variable car sinon cela revient est de la double declaration. C tres simple comme te l'a dit precedemment wouatouwouatou tu l'initialise avec une valuer qui n'existe pas encore lors de la lecture de page par le navigateur


---------------
Ce qui vaut la peine d'être fait vaut la peine d'être bien fait
n°23941
lamatrice
Posté le 11-04-2001 à 12:04:49  profilanswer
 

voila une réponse qui a le mérite d'être claire.
 
merci !

n°23944
speeder06
Posté le 11-04-2001 à 12:08:00  profilanswer
 

Excuse pour cette info, non correcte.
J ai confondu avec autre chose
 
Desolee

n°23952
lamatrice
Posté le 11-04-2001 à 12:45:31  profilanswer
 

nabab, ce que voulait dire speeder06, c'est que
 
Dans une fonction, si tu défini un variable sans utiliser le mot var, elle est automatiquement variable globale, ce qui revient au même que de l'avoir définit en dehors de cette fonction.
 
si je me trompe ?

n°23958
duch
Posté le 11-04-2001 à 13:06:49  profilanswer
 

oui


---------------
Webmaster du site de l'Île-Saint-Denis : http://www.lile-saint-denis.fr
n°23962
wouatouwou​atou
Posté le 11-04-2001 à 13:15:35  profilanswer
 

nabab a écrit a écrit :

Ben wouatouwouatou je lui ai proposé et il dit que cela ne change rien.




mais son initialisation comme jai dit est pas bon...
il a surement initialisé avec document.blabla...


---------------
"C'est le boulot qu'on ne commence jamais qui est le plus long à terminer"
n°23977
nabab
I'm blogging this.
Posté le 11-04-2001 à 13:54:39  profilanswer
 

lamatrice> oui mais c un comportement par defaut de l'intrepreteur javascript.
 
Pour moi speeder06, disait d'enlever le "var" devant le var i qui etait ecrit en dehors d'un code de fontion.
 
Mais y a pas de mal, je voulais d'ailleurs savoir ou cela pouvait etre ecrit afin de regarder excatement ce qu'il voulait dire ...
 
wouatouwouatou> ca y est speeder06 a pondu une solution assez nickel


---------------
Ce qui vaut la peine d'être fait vaut la peine d'être bien fait
n°23981
wouatouwou​atou
Posté le 11-04-2001 à 14:02:05  profilanswer
 

oups.. désolé, javai pas vu :D


---------------
"C'est le boulot qu'on ne commence jamais qui est le plus long à terminer"
mood
Publicité
Posté le   profilanswer
 


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

  javascript variable

 

Sujets relatifs
[Javascript, ASP , HTML, PHP ou autre ?] Identité !JAVASCRIPT : s adresser à des objets d un formulaire.....
Intégrer du code C dans un javascript : possible?[JAVASCRIPT] Faire du HTML sur une page WEB ?
javascript : pb avec le bordercolor[javascript] Pouvez-vous me "traduire" cette ligne?
variable JavaScript =>PHPjavascript variable et opérateur
au fait, comment on peut récuperer une variable javascript en asp ?[javascript + visual] modifier une variable java script
Plus de sujets relatifs à : javascript variable


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