Informatique


Les conditionnelles

Aller à


if

Syntaxe
	if (boolean)	{
		code à exécuter si true
	}
	
La valeur boolean est le contenu d'une variable évaluée en type booléen ou le résultat d'une expression conditionnelle et/ou logique (true ou false) .

Lorsque la valeur est true , il y a exécution de la séquence d'instructions contenue entre les accolades.

Lorsque la valeur est false, il n'y a pas d'exécution de la séquence comprise entre les accolades.

Démo
var time=8;
if (time<10)  {
  document.write("<b>Bonjour</b>");
  }
/*A tester avec d'autres valeurs...*/

if-else

Syntaxe
	if (boolean) {
	 code à exécuter si true
	}
	else  {
	 code à exécuter false
	}
  
La valeur boolean est le contenu d'une variable évaluée en type booléen ou le résultat d'une expression conditionnelle et/ou logique (true ou false) .

Lorsque la valeur est true , il y a exécution de la séquence d'instructions contenue entre les accolades du if et le code compris entre les accolades du else est ignoré.
Lorsque la valeur est false , il y a exécution de la séquence d'instructions contenue entre les accolades du else et le code compris entre les accolades du if est ignoré.

Démo
	var time=8;
	if (time<10)  {
	  document.write("Bonjour");
	  }
	else {
	  document.write("Bonne journée");
	  }
	/*A tester avec d'autres valeurs...*/

if else if else

Syntaxe
	if (boolean) {
	 code à exécuter si true
	}
	else if (boolean){
	 code à exécuter si true
	}
	else if (boolean){
	 code à exécuter si true
	}
	 ...
	 ...
	else  {
	 code à exécuter si false
	}
	
La valeur boolean est le contenu d'une variable évaluée en type booléen ou le résultat d'une expression conditionnelle et/ou logique (true ou false) .

Lorsque la valeur est true , il y a exécution de la séquence d'instructions contenue entre les accolades du if ou du else if concerné et le code compris entre les accolades des if else et du else sont ignorés.
Lorsque la valeur est false pour le if et les else if, il y a exécution de la séquence d'instructions contenue entre les accolades du else et le code compris entre les accolades du if et des else if sont ignorés.

Démo
	var time=8;
	if (time<7)  {
	 document.write("<b>Dodo</b>");
	}
	else if (time>=7 && time<8)  {
	 document.write("<b>J'ouvre un oeil</b>");
	}
	else if (time>=8 && time<12)  {
	 document.write("<b>Le bonheur à Fischer</b>");
	}
	else if (time>=12 && time<14)  {
	 document.write("<b>Du bon miam miam</b>");
	}
	else if (time>=14 && time<17)  {
	 document.write("<b>Bon après-midi à Fischer</b>");
	}

	else {
	 document.write("<b>Je rentre à la maison</b>");
	}
//A tester avec d'autres valeurs...

switch

Syntaxe
	switch(val) {
	case 1:
		exécution bloc de code si le contenu de val vaut 1
		break;
	case 2:
		exécution bloc de code si le contenu de val vaut 2
		break;
	default:
		exécution bloc de code si le contenu de val est différent de 1 ou 2
		}
	
Le contenu de la variable val est comparé avec la valeur placée derrière case, si les deux valeurs sont strictement égales le bloc d'instructions situé après les 2 points est exécuté.
L'instruction break est obligatoire, si elle manque la structure continue a exécuter les blocs d'instructions suivants en séquence, jusqu'à la prochaine instruction break.
Démo
	var day=2;
	switch (day) {
		case 0:
			  x="Dimanche";
			  break;
		case 1:
			  x="Lundi";
			  break;
		case 2:
			  x="Mardi";
			  break;
		case 3:
			  x="Mercredi";
			  break;
		case 4:
			  x="Jeudi";
			  break;
		case 5:
			  x="Vendredi";
			  break;
		case 6:
			  x="Samedi";
			  break;
		default: x="Valeur imposible";
	}
		console.log(x);
Il est possible de tester plusieurs valeurs pour un même bloc d'instructions à exécuter, mais chaque valeur testée doit être précédée de case et suivie de :.
Démo
var moment="18";
	switch (moment) {
		case "6":
		case "7":
		case "8":
		case "9":
		case "10":
		case "11":
			x="Bonjour";
			break;
		case "12":
		case "13":
		   x="Bon appétit";
		   break;
		case "14":
		case "15":
		case "16":
		case "17":
		   x="Bon après-midi";
		   break;
		case "18":
		case "19":
		case "20":
		case "21":
			 x="Bonne soirée";
			  break;
		case "22":
		case "23":
		case "24":
		   x="Bonne nuit";
		   break;
		default: x="Valeur imposible";
	}
document.write(x);
		

l'opérateur ? :

l'opérateur ?: est ternaire, il admet trois opérandes!

Cet opérateur est un raccourci à if else lorsque les blocs de code du if ou du else ne comportent qu'une seule instruction.

Syntaxe
	(boolean)? expr1 : expr2
	
Démo
var num, den;
num=1;
den=6;
(den===1)? document.write(num):document.write(num+"/"+den)
/* Fonctionne aussi:
x=(den===1)? num:num+"/"+den;
document.write(x);
*/
	

L'opérateur ?: peut accepter plusieurs instructions pour true ou false (qu'on sépare par des virgules) mais dans ce cas la structure if else est bien plus pratique!