Les variables en JavaScript

Sommaire du document

Types de valeurs en JavaScript

TypeExempleDescription
string"chaîne de caractères"Suite de caractères entre guillemets[1].
numeric234.54Nombre quelconque
booleanTrueOpérateur logique vrai ou faux
NullNullExempt de toute valeur
Object Objet défini par ses propriétés et méthodes
String Objet qui encapsule un type primitif string
Number Objet qui encapsule un type primitif numeric
Boolean Objet qui encapsule un type primitif boolean
Function Définition de fonction

Contrairement à certains langages plus rigoureux (comme le langage C ou Java), nous n'assignons pas de type particulier à nos variables. Cette liberté à un prix : des conversions automatiques de type peuvent produire des résultats non désirés.

 

Qu'est-ce qu'une variable ?

Une variable en JavaScript est une partie de la mémoire de l'ordinateur que le programmeur alloue au navigateur afin qu'il stocke un type de donnée.

Une variable ne contient qu'une seule donnée à la fois, mais cette donnée peut être modifiée par l'utilisateur ou par le script selon les besoins. Cette donnée peut elle-même contenir d'autres données, comme dans le cas de tabbleaux ou d'objets.

 

Déclaration d'une variable

Nous pouvons utiliser une variable en JavaScript sans l'avoir déclarée auparavant, mais nous pouvons aussi la déclarer en précédant son nom par le mot clé var.

Exemple : var mavariable;

Attention à certaines restrictions lors du choix du nom de la variable :

  • Les mots clés du langage JavaScript ne sont pas admis comme noms de variables.
  • Les caractères d'espacement ne sont pas admis.
  • Les symboles de ponctuation ne sont pas admis.
  • Le premier caractère du nom ne peut pas être un nombre.

Il faut aussi être attentif au fait que le langage JavaScript est sensible à la casse[2], c'est pourquoi nous pouvons prendre des convensions d'écriture, comme toujours commencerun nom de variable ou de fonction par une minuscule, et un nom de classe par une majuscule. Certains programmeurs n'utilisent que des minuscules et placent un caractère de soulignement (le tiret bas « _ », notation “CamelCase”) pour séparer les parties du nom (exemple : ma_variable au lieu de maVariable).

 

Assignation d'une valeur

Le fait de donner une valeur à une variable se nomme « l'affectation » ou encore « l'assignation ». Nous utilisons le signe égal pour affecter une valeur à une variable[3].

Exemple :
var personne;
personne="Duns Scot";

Nous pouvons aussi affecter une valeur à la variable au moment de sa déclaration : var personne="Duns Scot";

 

Conversions entre types de valeurs

Le langage JavaScript nous facilite le traitement des types de données en évitant de déclarer leur type, mais cela peut provoquer des incohérences selon la manière dont ces données seront traitées.
En effet :

  • L'instruction 1 + 2 nous renvoie la valeur 3 comme résultat.
  • L'instruction 1 + "2" nous renvoie 12 car la valeur 2 est convertie automatiquement en chaîne de caractère, et le signe + est considéré comme opérateur de concaténation. Le résultat est la jointure de deux chaînes.

 

Conversions de chaînes en nombres

Deux fonctions sont fournies par JavaScript : parseInt(string string, numeric[4] radix) et parseFloat(string string).

Exemples[ref 1] :

  1. document.write(parseFloat("14") + "<br />");
  2. document.write(parseFloat("46.36") + "<br />");
  3. document.write(parseFloat("14 36 46") + "<br />");
  4. document.write(parseFloat(" 36 ") + "<br />");
  5. document.write(parseFloat("36 years") + "<br />");
  6. document.write(parseFloat("He was 36") + "<br />");

Ce qui nous donne :

14
46.36
14
36
36
NaN

Nous pouvons remarquer que la valeur retournée dans le dernier exemple est NaN, ce qui signifie “Not a Number” (en français, « pas un nombre ») car l'argument commence par un caractère et pas par un chiffre.

 

Conversions de nombres en chaînes

Il nous suffit d'ajouter une chaîne vide (ouverture et fermeture des guillemets) au nombre que nous désirons convertir.

Par exemple, pour afficher et convertir la valeur 121 en chaîne "121", nous utiliserons l'instruction suivante : document.write(" " + 121);.

Une chaîne de caractères  (String) est un objet qui possède en JavaScript certaines propriétés et méthodes. Nous pouvons donc par exemple demander le nombre de caractères contenus dans la chaîne.
(" " + 121).length nous renvoie la valeur 3.

 

Portée de variable

Il existe deux manières de définir une variable : à l'intérieur (variables locales) ou à l'extérieur des fonctions (variables globales).

 

Variables locales

Il est impératif de faire précéder le nom de la variable par le mot clé var dans la définition d'une variable locale. Sa portée s'étend seulement à l'intérieur des instructions de la fonction. Il est donc tout à fait possible d'utiliser le même nom pour deux variables locales définies dans deux fonctions différentes, ces deux variables étant parfaitement distinctes.

En pratique, s'il est commode d'utiliser le même nom par exemple pour des compteurs de boucle, il est déconseillé d'utiliser des noms identiques pour différentes variables locales, et ce afin d'éviter toute confusion lorsque nous relirons le code après un certain temps.

 

Variables globales

Pour des raisons de compatibilités avec les versions futures du langage, il est conseillé de faire précéder le nom de la variable par le mot clé var, même s'il est possible de définir des variables locales sans le mot clé.

En JavaScript, une variable globale a une portée qui s'étend à tout le document chargé dans une fenêtre ou un cadre du navigateur. Ce qui revient à dire que toutes les instructions de script placées à n'importe quel endroit du document (y compris dans une fonction) ont un accès direct à la valeur de la variable.
Il est donc impératif de bien mesurer la portée des variables globales, car une variable de même nom située au sein d'une fonction quelconque dans la page se verra affectée de la même valeur.

Au moment où une autre page est chargée, les valeurs des variables globales de la page précédente sont effacées de la mémoire. Il existe divers moyens de contourner le problème (comme par exemple l'emploi de cookies, ou la définition de variables globales dans un document contenant des cadres).

 

Réseaux sociaux

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher les interactions avec les réseaux sociaux sur ces pages.

 

Nuage de mots clés

13 mots clés dont 0 définis manuellement (plus d'information...).

Avertissement

Cette page ne possède pas encore de mots clés manuels, ceci est donc un exemple automatique (les niveaux de pertinence sont fictifs, mais les liens sont valables). Pour tester le nuage avec une page qui contient des mots définis manuellement, vous pouvez cliquer ici.

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher le nuage de mots clés.

 

Notes

  1.  Guillemets : Il existe une multitude de délimiteurs de chaînes de caractères, comme par exemple les signes diacritiques suivants « ‘ » « ’ » « ‚ » « ‛ » « “ » « ” » « „ » « ‟ » mais les plus utilisés sont les guillemets droits simples « ' » et les guillemets droits doubles « " ».

  2.  Sensible à la casse : cela signifie qu'une distinction est faite entre les lettres majuscules et minuscules.

  3.  Opérateur d'assignation : Attention à ne pas confondre l'opérateur d'assignation « = » avec celui de test d'égalité « == ».

  4. a,b numeric parseInt : seulement la partie entière (≈ integer)

  5.  Not a Number : correspond à « pas un nombre” en français

 

Références

  1. Consulter le document html Langue du document: uk Example : w3schools, JavaScript parseFloat() Function (version 04/07/10)

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

 

Astuce pour imprimer les couleurs des cellules de tableaux : http://www.gaudry.be/ast-rf-450.html
Aucun commentaire pour cette page

© Ce document issu de l′infobrol est enregistré sous le certificat Cyber PrInterDeposit Digital Numbertection. Enregistrement IDDN n° 5329-38
Document créé le 19/03/02 00:00, dernière modification le Vendredi 17 Juin 2011, 11:12
Source du document imprimé : http:///www.gaudry.be/javascript-variables.html
St.Gaudry©07.01.02
Outils (masquer)
||
Recherche (afficher)
Recherche :

Utilisateur (masquer)
Apparence (afficher)
Stats (afficher)
15838 documents
455 astuces.
550 niouzes.
3107 definitions.
447 membres.
8121 messages.

Document genere en :
0,12 seconde

Mises à jour :
Mises à jour du site
Citation (masquer)
So often we work hard to find correct solutions to the wrong problems, without ever realizing it.

Venkat Subramaniam
 
l'infobrol
Nous sommes le Mercredi 13 Décembre 2017, 04:32, toutes les heures sont au format GMT+1.00 Heure, heure d'hiver