Accueil > JavaScript > JavaScript – L’objet Number

JavaScript – L’objet Number

This entry is part 15 of 19 in the series JavaScript - Tutoriel
  1. Propriétés de l’objet Number
    1. MAX_VALUE
    2. MIN_VALUE
    3. NaN
    4. NEGATIVE_INFINITY
    5. POSITIVE_INFINITY
  2. Méthodes de l’objet Number

Dans JavaScript, les nombres sont eux aussi des objets. Il s’agit de l’objet Number.
Comme pour String, il y a deux façons de créer un objet Number. Soit en utilisant
le constructeur Number (new Number()), ou bien implicitement :

var Nombre = new Number(25);
document.write(typeof Nombre);// Sortie -> object

ou bien :

var Nombre = 25;
document.write(typeof Nombre);// Sortie -> number

Même remarque que pour String : l'opérateur typeof ne renvoi pas la même chose, et
cependant, ces deux choses sont identiques.

La première syntaxe qui utilise le constructeur Number peut s'averer interessante en cas de conversion
du type String au type Number.
En effet ajouter 10 à la chaîne de caractères 11 ne donnera pas 21 mais
1011 comme le montre l'exemple suivant :

var MaVariable = "11";

MaVariable += 10;
document.writeln("<pre>");
document.writeln(MaVariable);// Sortie -> 1110
document.writeln(typeof MaVariable);// Sortie -> string
document.writeln("</pre>");

Une concatenation est effectuée. Il faut alors utiliser le constructeur Number pour réaliser une
conversion :

var MaVariable = "11";

MaVariable = (new Number(MaVariable)) + 10;// Conversion
document.writeln("<pre>");
document.writeln(MaVariable);// Sortie -> 21
document.writeln(typeof MaVariable);// Sortie -> number
document.writeln("</pre>");

Il est aussi possible d'effectuer une conversion en utilisant parseInt ou parseFloat. Ces deux méthodes appartiennent à l'objet
window (que nous détaillerons plus loin).
parseInt convertit son argument en nombre entier et parseFloat en nombre à virgule flotante :

var Nombre = "3.1415";// Un nombre dans une chaine

document.writeln("<pre>");
document.writeln(parseInt(Nombre));// Sortie -> 3
document.writeln(parseFloat(Nombre));// Sortie -> 3.1415
document.writeln(typeof parseFloat(Nombre));// Sortie -> number
document.writeln("</pre>");

On peut egalement determiner si une variable est un nombre ou non en utilisant la méthode isNaN de l'objet window. isNaN
signifie is Not a Number. Autrement dit, si l'argument transmis n'est pas un nombre, isNaN renvoi true :

var Chaine = new String("Hello");

document.write(isNaN(Chaine));// Sortie -> true

Propriétés de l'objet Number

MAX_VALUE
Renvoi la plus grande valeur utilisable :

document.write(Number.MAX_VALUE);// Sortie - > 1.7976931348623157e+308
MIN_VALUE
Renvoi la plus petite valeur utilisable :

document.write(Number.MIN_VALUE);// Sortie -> 5e-324
NaN
Renvoi la chaîne de caractères NaN qui signigie Not a Number (il arrive que je me repete :-D ). Une
valeur NaN peut par exemple être provoquée par une division telle que celle ci :

document.writeln("<pre>");
document.writeln(0 / 0);// Sortie -> NaN
document.writeln(Number.NaN);// Sortie -> NaN
document.writeln("&lt./pre>");
NEGATIVE_INFINITY
Renvoi la chaîne de caractères -Infinity, qui peut être le résultat d'une division telle que celle ci :

document.writeln("<pre>");
document.writeln(-1 / 0);// Sortie -> -Infinity
document.writeln(Number.NEGATIVE_INFINITY);// Sortie -> -Infinity
document.writeln("</pre>");
POSITIVE_INFINITY
Renvoi la chaîne de caractères Infinity, qui peut être le résultat d'une division telle que celle ci :

document.writeln("<pre>");
document.writeln(1 / 0);// Sortie -> Infinity
document.writeln(Number.POSITIVE_INFINITY);// Sortie -> Infinity
document.writeln("</pre>");

Méthodes de l'objet Number

L'objet Number ne possede qu'une seule méthode : toString().
toString convertit le nombre en objet de type String. Mais ce n'est pas tout : si un argument est transmis, le nombre
est convertit dans la base représenté par cette argument.
Exemple :

var Nombre = 255;

document.writeln("<pre>");
document.writeln(Nombre + " en binaire : " + Nombre.toString(2));
document.writeln(Nombre + " en octal : " + Nombre.toString(8));
document.writeln(Nombre + " en hexadecimal : " + Nombre.toString(16));
document.writeln("</pre>");

Il est à noter que JavaScript distingue 3 bases : décimal (base 10), octal (base 8) et hexadécimal (base 16).
Pour exprimer une valeur octale, il faut faire préceder le nombre de 0 (zéro). Pour les valeurs hexadécimales, de 0x ou 0X
(zéro x) :

var Decimal = 10;
var Octal = 012;
var Hexadecimal = 0xA;

document.writeln("<pre>");
document.writeln(Decimal);// Sortie -> 10
document.writeln(Octal);// Sortie -> 10
document.writeln(Hexadecimal);// Sortie -> 10
document.writeln("</pre>");
Series Navigation«JavaScript – L’objet StringJavaScript – L’objet Math»
Categories: JavaScript Tags:
  1. 10
    02/09/2005 à 22:09 | #1

    Interesting info

  2. 10
    22/03/2006 à 01:29 | #2

    Your site is very informational for me. Nice work.

  1. Pas encore de trackbacks