Masson Formation

Dans cet article

Un langage faiblement typé et une forte scalabilité. ConstanteLetvarLa variable littéraleQuelle variable utiliser alors ?

Les variables en JS

Les variables servent d'espace de stockage en JS comme dans les autres langages. On peut y stocker du texte (string), un chiffre entier (integer ou int), un réel (float) mais aussi une collection d'informations (un array).

Un langage faiblement typé et une forte scalabilité.

Le JS est dit "langage faiblement typé". Cela signifie que les variables déclarées n'ont pas besoin d'être typé. Il est inutile, comme dans d'autres langages, d'indiquer si elle contient un int, un float ... On déclare la variable avec le contenu et c'est tout

Voici des exemples d'initialisation de variables.


                    
	let nom = "masson";
	var prenom = 'Sébastien';
	let age = 21;
	const taille = 1.90;
	

Vous noterez que les chaînes (string en anglais, le texte) peut être encadré par des guillemets simples ou doubles.

Il existe 3 types de variables en JS :

Mais pourquoi trois types de variables ?

A chaque type de variable son rôle et son champ d'application.

Constante

Comme son nom l'indique la variable appelée "constante" n'est pas variable mais constante. C'est bien un espace de stockage mais qui, une fois initilisée, ne pourra plus changer.

Quel intérêt d'avoir une donnée fixe, qui ne peut plus changer ?

Eh bien justement, s'assurer que la donnée ne change pas, sécuriser notre application. Par exemple, je propose un code promotion à mes internautes avec une remise de 20%. Le coefficient multiplicateur 0,8 sera placé dans une constante pour ne pas être modifié. On peut imaginer la même chose avec un taux de TVA, une adresse ...

Let

La variable let est une variable dite locale. Son champ d'action est limité à l'endroit où elle est créée.

Elle est particulièrement évidente à comprendre dans le cadre d'une boucle où l'incrément sert à compter le nombre d'itération que l'on souhaite réaliser.


                    
	for(let i=0; i<100; i++){
		console.log("ligne "+i);
	}
	

Ici, on demande à écrire 100 lignes en indiquant le numéro de la ligne. L'incrément i n'a d'intérêt que dans la boucle. La variable locale est donc particulèrement indiquée.

Pour bien comprendre, voici un cas où l'utilisation de la variable locale let ne fonctionne pas.


                    
	// je crée une fonction
	function affichage(){
		let prenom = "seb";
		console.log(prenom); // affiche correctement mon prénom
	}
	// je lance ma fonction
	affichage();

	console.log(prenom); // erreur car la variable n'existe QUE dans la fonction affichage
	

var

le mot clé var permet de créer une variable globale, utilisable dans tout le code.

Dans notre exemple précédent, si on utilise var au lieu de let pour créer la boucle, la variable i sera accessible en dehors de la boucle.


                    
	for(var i=0; i<100; i++){
          console.log(i);
     }
     
     console.log('et donc i vaut :' + i); // affiche i vaut : 100
	

C'est un souci car i ne devait servir qu'à cette boucle. Accessible de l'extérieur il peut entrer en interaction avec une autre variable i, alimenter une faille de sécurité ...

Le même code avec un let va provoquer une erreur.


                    
	for(let i=0; i<100; i++){
          console.log(i);
     }
     
     console.log('et donc i vaut :' + i); // erreur
	

La variable littérale

Il y a encore un moyen de déclarer une variable en JS, la créer simplement, sans indiquer sa nature.


                    
	agence = "masson communication";
	

Sans rien préciser, comme dans l'exemple ci-dessus, on crée une variable globale.

Quelle variable utiliser alors ?

Il n'y a pas de règle absolue mais on privilégiera les constantes et les varaibles locales pour rigidifier le code et éviter la réutilisation non contrôlée de nos variables.

Une constante, une fois définie, ne peut pas être changée, c'est protecteur

Une variable locale ne peut opérer que dans son champ, ce qui protège le reste du script. Or, comme une variable locale n'est pas amener à sortir de son champ, cela complique les possibilités de hacking ou d'erreur de code...

© copyright 2025 Masson Formation - Tous droits réservés