Visit Mozilla.org

Référence de JavaScript 1.5 Core:Objets globaux:Boolean

Un article de MDC.


Sommaire

[modifier] Résumé

Object Core

L'objet Boolean correspond à l'encapsulation d'une valeur booléenne.

[modifier] Création

Avec le constructeur de l'objet Boolean :

var = new Boolean(valeur)

[modifier] Paramètres

valeur 
Valeur initiale de l'objet de type Boolean. La valeur ou variable est convertie en valeur booléenne si nécessaire. Si elle n'est pas fournie ou prend l'une des valeurs suivantes : 0, -0, null, false, NaN, undefined ou une chaîne vide (""), l'objet prend la valeur initiale false. Pour toutes les autres valeurs, y compris les objets ou même la chaîne "false", l'objet prendra la valeur initiale true.

[modifier] Description

Les valeurs booléennes primitives true et false ne doivent pas être confondues avec les valeurs d'un objet de type Boolean.

Tout objet dont la valeur n'est pas null ou undefined, même un objet Boolean dont la valeur est false, sera évalué comme true dans une expression conditionnelle. Par exemple, dans la condition suivante, la variable x sera évaluée à true même si l'objet possède quant à lui la valeur false.

x = new Boolean(false);
if (x) // la condition est vraie

Ce n'est pas le cas si on utilise une valeur booléenne primitive. Par exemple, l'évaluation suivante renverra la valeur false.

x = false;
if (x) // la condition est fausse

Il n'est pas conseillé d'instancier un objet de la classe Boolean pour convertir une expression non-booléenne en valeur booléenne. Utilisez plutôt la fonction Boolean elle même pour transtyper l'expression désirée.

x = Boolean(expression);     // recommandé
x = new Boolean(expression); // à ne pas utiliser

Rappelons que l'instanciation d'un objet Boolean à l'aide d'un autre objet, y compris un autre objet de type Boolean dont la valeur serait false, produira toujours un objet avec une valeur initiale à true.

myFalse = new Boolean(false);   // valeur initiale : false
g = new Boolean(myFalse);       // valeur initiale : true
myString = new String("Hello"); // objet chaîne
s = new Boolean(myString);      //valeur initiale : true

Bref, en un mot comme en cent, n'utilisez pas un objet Boolean à la place d'une valeur booléenne primitive.

[modifier] Compatibilité avec des versions antérieures

[modifier] JavaScript 1.2 et versions antérieures

L'objet de type Boolean se comporte de la manière suivante :

  • Lorsqu'un objet du type Boolean est utilisé dans un test conditionnel, JavaScript renvoie la valeur de l'objet Boolean. Par exemple, un objet du type Boolean dont la valeur est false est traité de la même manière que la valeur primitive false, et un objet du type Boolean dont la valeur est true est traité de la même manière que la valeur primitive true. Si l'objet Boolean est à false, le test conditionnel est évalué à false.
  • Un objet Boolean peut être utilisé à la place d'une valeur booléenne primitive.

[modifier] Propriétés

constructor : spécifie la fonction créant le prototype d'un objet Boolean.

prototype : Définit une propriété partagée par tous les objets Boolean.

[modifier] Méthodes

toSource : renvoie une définition littérale d'objet représentant l'objet Boolean spécifié. Cette valeur peut être utilisée pour créer un nouvel objet. Remplace la méthode Object.toSource.

toString : renvoie une chaîne représentant l'objet spécifié. Remplace la méthode Object.toString.

valueOf : renvoie la valeur primitive d'un objet Boolean. Remplace la méthode Object.valueOf.

Cet objet hérite également des méthodes watch et unwatch d'Object.

[modifier] Exemples

[modifier] Création d'objets Boolean avec une valeur initiale de false

bNoParam = new Boolean();
bZero = new Boolean(0);
bNull = new Boolean(null);
bEmptyString = new Boolean("");
bfalse = new Boolean(false);

[modifier] Création d'objets Boolean avec une valeur initiale de true

btrue = new Boolean(true);
btrueString = new Boolean("true");
bfalseString = new Boolean("false");
bSuLin = new Boolean("Su Lin");