Création de variable javascript

pierre1619 -  
Templier Nocturne Messages postés 9989 Statut Membre -
Bonjour,

dans un script Javascript, j'ai d'ores et déjà une variable A.

Je souhaite définir une variable B tel que :

si A<5000, alors B=0
si A>=5000, alors B=10

Je suppose qu'il fait pour cela définir une fonction du type:

function determinerVarB()

{
if (A<5000) {B=0}
else {B=10}
}

Cependant, je doute fortement que {B=0} ne soit une instruction correcte. Faut-il utiliser "return" ici, ou autre chose?

Une fois la fonction déterminée, faudra-t-il qu'elle s'exécute avant les fonctions utilisant A et B?

Y a-t-il un autre moyen plus simple de définir la variable B selon ces conditions?

Merci par avance,

Pierre

3 réponses

  1. Templier Nocturne Messages postés 9989 Statut Membre 1 107
     
    code final (a priori) :

    var B = 0;
    
    function determinerVarB()
    
    {
    
    if (A>=5000) {B=10}
    
    }
    1
  2. hiuky
     
    Bonjour
    var B = 0;
    function determinerVarB()
    {
    if (A<5000) {B+=0}
    else {B+=10}
    }
    0
    1. pierre1619
       
      Bonjour,

      merci pour votre réponse si rapide. Petit doute cependant : Pourquoi dois-je inscrire "var B =0" au-dessus de la fonction, et pourquoi est-ce {B+=0} et non {B=0} après if(A<5000) ?

      Et dois-je placer cette fonction avant les autres utilisant A et B?

      Merci par avance.

      Pierre
      0
    2. hiuky
       
      var B=0 peut aussi etre mis dans la fonction. C'est juste une histoire de vitesse d'execution du code. Il faut eviter les variables entre accolade.
      B+=0 revient a dire B = B + 0;
      0
    3. Poukkid
       
      Bonjour,

      Pourquoi mettre "else {B += 10}" quand les deux seules valeurs qu'il semble vouloir recevoir sont 10 ou 0..?? ce n'est pas du tout cohérent, il faut ecrire "else {B = 0}"
      Sinon, si il appelle plusieurs fois cette fonction il pourra obtenir des valeurs comme 20, 30, etc...



      Oui B=0 est une instruction correcte, c'est une affectation.
      Ta proposition est parfaitement valide, et surtout n'utilises pas le += qui va te faire des surprises et ne semble pas du tout adapté à ton problème...
      0
    4. pierre1619
       
      Merci beaucoup.

      Pierre
      0
    5. pierre1619
       
      Du coup j'avais encore une question. Lorsque j'ai défini ma variable B par le fonction determinervarB(), est-ce que je peux simplement utiliser "B" dans le reste du document, ou est ce que je dois réécrire déterminervarB() partout?

      Merci encore,

      Pierre
      0
  3. Templier Nocturne Messages postés 9989 Statut Membre 1 107
     
    Pourquoi s'encombrer ?

    var B = 0;

    function determinerVarB()

    {

    if (A>=5000) {B+=10}

    }
    0
    1. Poukkid
       
      Encore une fois, pourquoi mettre un += ??? une simple affectation répond à son problème...
      0
    2. Templier Nocturne Messages postés 9989 Statut Membre 1 107
       
      parce que j'ai fais un copier coller, et que j'ai oublié de virer le + ^^

      je corrige immédiatement ;)
      0