Nous définirons d'abord les quatre
opérations,
Addition x = x + 1 , x = y + z
Soustraction x = x - 1, y = z - s
Multiplication x = y * 2, y = y * 2
Division x = y / 2, y = z / x
Pour éditer la valeur d'une variable dans une boite de
dialogue on l'écrit directement entre les parenthèses, comme ceci :
alert(x)
Exercice, changez dans la forme ci dessous, les valeurs
d'assignation de x et y et l'opérateur de l'opération arthmétique, (+, -, *,
/).
Concaténation
C'est l'opération qui permet
d'additionner des éléments de textes entre eux, l'opérateur est le même que
celui de d'addition, (+). Exemple :
var texteA = "
C\'est l\'opération "
var texteB = "qui permet d\'additionner"
texteA = texteA + texteB
Voir le résultat dans la forme ci-dessous.
Si vous supprimez le \ dans la forme ci-dessous et que vous
exécutez le programme, l'erreur ne se produit pas mais elle apparaitrait si
vous exécutiez ce texte dans une page normale.
On emploi le même opérateur pour
concaténer des variables numériques et des variables textes, (+).
Exercice, dans la forme ci-dessus :
Rajouter la définition d'une
variable numérique x,
Assignez lui un nombre
Remplacez texteB par cette nouvelle
variable dans la ligne de contaténation
Afficher Corrigé.
Remplacez texteA par cette nouvelle
variable dans la ligne de contaténation
Afficher
Si le chiffre est collé au texte qui
le suit
que faut-il faire? Corrigé.
On peut écrire un nombre en texte,
quantite = "5"
Cette variable peut être extraite d'un texte, d'une base de
données, etc...
Qu'arrive-t-il si on se sert de cette variable dans un
contexte arithmétique?
x = quantite + 1
Afficher la forme ci-dessous.
Vous obtenez 51 c'est à dire un texte qui
contient "51" et non pas 6.
L'ordre dans lequel apparaisse les variables ou chiffre
importe peu, vous pouvez inversez quantite et 1 vous aurez toujours un texte,
("15").
Il existe une instruction qui convertit les textes en nombre
si leur contenu le permet, (parseInt()), mais nous pouvons aussi jouer sur le
fait que javascript s'ajuste automatiquement au type de variable désirée. Il y
a une ambiguité pour (+), qui s'applique au texte et au nombre mais pas pour
les autres opérateurs arithmétiques.
Si vous écrivez ,
quantite = quantite * 1
et que quantite contiennent un nombre en texte il sera
automatiquement converti en nombre.
Faites la correction dans la forme ci-dessus et exécutez la
page. Corrigé.
Si quantite ne contient pas de nombre l'opération ci dessus
provoquera le chargement dans quantite de NaN, (not a number, ce n'est pas un
nombre). Cette valeur, (NaN), se retrouverait dans toute les valeurs ou quantite
ou des valeurs dérivés de quantite serait impliqué. Ceci ne provoque pas de
message d'erreur.
Si vous trouvez dans un résutat de calcul NaN, vous devez
remonter dans la chaine de calcul jusqu'à la variable en erreur.
Exercice, remplacer 5 par une letrre dans la forme ci-dessus,
la multiplication,
quantite = quantite * 1, mettra dans quantite le valeur NaN,
qui sera affichée. Corrigé.