Accueil Accueil     Membres Membres     Forum Forum     Articles Articles     Download Download     Sondages Sondages     Outils Outils     Scriptland Scriptland     ProgBoards ProgBoards     FR  
  Morbleu ! Morbleu ! Romantisme sportif
Cours de programmation, code source, aide au développement, forums d'entraide - CybWarrior

login Bug Contact RSS
login bug contact RSS


| Internet |
   Créer son site web

| Langages |
   HTML
   JavaScript
   Langage C
   PHP
   QBasic
   Turbo Pascal

| Programmation |
   Algorithmie
   Maths appliquées
   Windows

| Trucs & astuces |
   Lexique
   Oeufs de Pâques (easter eggs)
   Registre et Windows

| Téléchargements |
   Flash
   Freeware
   JavaScript
   NASM
   PHP
   QBasic
   Turbo Pascal
   Visual Basic / VBScript

JavaScript - La structure conditionnelle

Autre langage disponible pour cet article : FR
Rubrique : JavaScript
lundi 25 mars 2002 18:40

Voir les commentaires pour JavaScript - La structure conditionnelle
Autres articles :
- JavaScript - Introduction au JavaScript
- JavaScript - Inclusion dans une page
- JavaScript - Un langage orienté objet
- JavaScript - Les commentaires
- JavaScript - Ecrire dans le document
- JavaScript - Les variables
- JavaScript - Opérateurs
- JavaScript - La structure conditionnelle
- JavaScript - Les cas
- JavaScript - Les boucles
- JavaScript - Les tableaux
- JavaScript - Les fonctions
- JavaScript - Les objets
- JavaScript - L'objet String
- JavaScript - L'objet Number
- JavaScript - L'objet Math
- JavaScript - L'objet Date
- JavaScript - Les expressions régulières
- JavaScript - L'objet navigator
<< - >>

  1. if...else
  2. ?:

if...else

La structure conditionnelle permet d'influer sur le déroulement du script suivant...certaines conditions!
Si vous connaissez un autre langage, vous reconaitrez le classique if et else.
if execute une instruction ou un bloc d'instruction si la condition est évaluée à true.
Voici un exemple :
var age=18;

if(age >= 18)document.write('Vous êtes majeur');// Affiche 'Vous êtes majeur'
// si la variable age est 
// supérieure à 18
Nous l'avons vu à la page précedente : l'opérateur >= renvoi true si l'opérande de gauche est supérieur ou égale à l'opérande de droite.
C'est le cas ici, puisque la variable age est initialisée à 18. Le script affiche donc Vous êtes majeur.
On peut d'ailleurs le vérifier simplement, en assigant une valeur inférieure à 18 à la variable age :
var age=10;// 10 au lieu de 18

if(age >= 18)document.write('Vous êtes majeur');// Affiche 'Vous êtes majeur'
// si la variable age est 
// supérieure à 18
Dans ce cas, rien est affiché.
Mais on peut executer une instruction alternative, au cas où la condition if n'est pas satisfaite. On utilise else.
Nous pouvons donc completer notre programme ainsi :
var age=10;

if(age >= 18)document.write('Vous êtes majeur');// Si age <=18 ...
else document.write('Vous êtes mineur');// Sinon ...
Dans ce cas là, si la variable age est supérieure ou égale à 18, le script affiche Vous êtes majeur. Sinon, il affiche Vous êtes mineur.

Si vous connaissez le QBasic, vous serez peut-être surpris d'apprendre qu'il n'y a pas de ELSEIF.
On peut contourner l'obstacle en combinant un else et un if :
if(age < 18)document.write("Vous êtes trop jeune");
else if(age > 70)document.write("Vous êtes trop vieux");
else if(age < 0)document.write("Vous n'êtes pas encore né !");
else document.write("C'est bon");
Nous avons vu comment executer une instruction quand une condition est vraie. Mais si on avait plusieurs instructions?
Au lieu de répeter plusieurs fois le même if, on peut utiliser ce qu'on appelle un bloc d'instruction.
Un bloc d'instruction commence par un crochet (ou une accolade, comme vous voulez) : {, et se termine par un...crochet (dans l'autre sens!) : }
Voici par exemple un bloc d'instruction :
// on commence le bloc d'instruction avec {
{
document.write("Cette ligne est comprise dans un bloc d'instructions");
document.write("Celle-ci aussi");
}
// on le termine avec }
Employé ainsi, ça n'a que peu d'intêret. Avec un if...else, ça en a un peu plus :
/*Horoscope du 3 au 9 juin 2001 de Christine Haas*/
var signe=prompt("Quel est votre signe astrologique en minuscules et sans accents");
var texte="";

if(signe=="belier"){
texte+="Après six mois de bons et loyaux services, Vénus (amours,<br>";
texte+="plaisirs) vous quitte ce mercredi pour entrer chez votre<br>";
texte+="voisin le Taureau. Pendant quelque temps, vous serez plus<br>";
texte+="possessif, plus jaloux, plus tendre aussi...<br>";
}
else if(signe=="taureau"){
texte+="Jeudi et vendredi seront les meilleures journées de la semaine,<br>";
texte+="surtout si vous êtes né en avril. Vous vous sentirez en<br>";
texte+="harmonie avec le monde et avec ceux que vous aimez. Une<br>";
texte+="surprise agréable est au menu.<br>";
}
else if(signe=="gemeaux"){
texte+="Né fin mai : Saturne (freins, limites) est sur votre Soleil<br>";
texte+="et vous le sentirez davantage entre lundi et mardi. Vous<br>";
texte+="aurez probablement un sentiment de solitude, ou une conscience<br>";
texte+="accrue des dures réalités de la vie.<br>";
}
else if(signe=="cancer"){
texte+="Venus (amours, plaisirs) entre mercredi dans un signe en<br>";
texte+="harmonie avec le vôtre. Pendant pluseurs semaines, sachez<br>";
texte+="mettre du piment dans votre vie quotidienne. Sortez de la<br>";
texte+="routine et vos amours seront flamboyantes!<br>";
}
else if(signe=="lion"){
texte+="Lundi et mardi seront positifs pour vos amours, mais par la<br>";
texte+="suite Vénus rentrera dans le secteur attribué à la carrière<br>";
texte+="professionnelle, ce qui signifie que l'amour passera au second<br>";
texte+="plan pour beaucoup d'entre vous.<br>";
}
else if(signe=="vierge"){
texte+="Lundi et mardi ne seront pas les meilleurs jours de cette<br>";
texte+="semaine. Soit vous vous sentirez seul ou mal entouré, soit<br>";
texte+="vous remâcherez de sombres idées. Ne tombez pas dans votre<br>";
texte+="piège habituel : douter de vous-même.<br>";
}
else if(signe=="balance"){
texte+="Né autour du 14 octobre : vous pourrier avoir de belles<br>";
texte+="opportunités à saisir dans les jours qui viennent, car le<br>";
texte+="Soleil et Jupiter (chances) vont se donner la main pour élargir<br>";
texte+="votre horizon professionnel ou affectif.<br>";
}
else if(signe=="scorpion"){
texte+="Vénus (amours) change de signe mercredi et se trouvera face au<br>";
texte+="vôtre. Si vous êtes né en octobre, vous serez les premiers à<br>";
texte+="bénéficier de sa nouvelle position : rencontres, invitations et<br>";
texte+="offres seront au rendez-vous.<br>";
}
else if(signe=="sagittaire"){
texte+="Ça bouge aussi côté cœur, puisque Vénus change de signe<br>";
texte+="mercredi. Elle occupera votre secteur du travail, ce qui n'est<br>";
texte+="guère passionnant pour vos amours. Elles s'enliseront un peu<br>";
texte+="dans le quotidien.<br>";
}
else if(signe=="capricorne"){
texte+="C'est le moment de faire le ménage dans vos amours, de les<br>";
texte+="sortir du placard où vous les aviez rangées depuis février,<br>";
texte+="et de faire revivre leurs jolies couleurs. Vous en aurez<br>";
texte+="l'opportunité jeudi et vendredi.<br>";
}
else if(signe=="verseau"){
texte+="Vénus (amours, plaisirs) rentre mercredi dans votre secteur de<br>";
texte+="la famille et de la maison. Une occasion d'être plus <br>";
texte+="démonstratif envers ceux que vous aimez, et de faire des achats<br>";
texte+="pour agrémenter votre décor.<br>";
}
else if(signe=="poissons"){
texte+="Fort heureusement, Vénus (amours, bien-être) vient à votre<br>";
texte+="secours, surtout si vous êtes né en février. Elle occupera un<br>";
texte+="signe ami à partir de mercredi : vous aurez un soutien tendre<br>";
texte+="de votre entourage.<br>";
}
else{
texte+="heu...";
}

document.write(texte);
Ne vous préoccupez pas de l'instruction prompt, sur la première ligne. Nous l'étudierons plus loin.
Cette exemple affiche l'horoscope, suivant la variable signe. Peut importe l'utilité ou l'interet d'un tel script : c'est juste pour l'exemple...

? :

Si vous pratiquez le Visual Basic, vous connaissez certainement l'instruction IIF.
?: se comporte exactement de la même façon. Il prend trois arguments :
  • Le premier est une condition
  • Le deuxième est la valeur à renvoyer si la condition est true
  • Le troisième est la valeur à renvoyer si la condition est false
Voici un exemple :
var nombre=5;
var etat = (nombre % 2 == 0 ? "paire" : "impaire");
//             CONDITION    ? SI VRAI : SI FAUX

document.write("Le nombre " + nombre + " un est nombre " + etat);


Voir les commentaires pour JavaScript - La structure conditionnelle
 06 juillet 2008 | Version 4.0.0 | © 2001 - 2007