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,undefinedou une chaîne vide (""), l'objet prend la valeur initialefalse. Pour toutes les autres valeurs, y compris les objets ou même la chaîne"false", l'objet prendra la valeur initialetrue.
[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
Booleanest utilisé dans un test conditionnel, JavaScript renvoie la valeur de l'objetBoolean. Par exemple, un objet du typeBooleandont la valeur estfalseest traité de la même manière que la valeur primitivefalse, et un objet du typeBooleandont la valeur esttrueest traité de la même manière que la valeur primitivetrue. Si l'objetBooleanest àfalse, le test conditionnel est évalué àfalse.
- Un objet
Booleanpeut ê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");