Previous Contents Index Next
Core JavaScript Reference 1.5

> Boolean

> The Boolean object is an object wrapper for a boolean value.

> Core object |
> Implemented in | JavaScript 1.1, NES 2.0 JavaScript 1.3: added toSource method
> ECMA version | ECMA-262

> Created by
> The Boolean constructor:

> new Boolean(value)

> Parameters

> value | The initial value of the Boolean object. The value is converted to a boolean value, if necessary. If value is omitted or is 0, -0, null, false, NaN, undefined, or the empty string (""), the object has an initial value of false. All other values, including any object or the string "false", create an object with an initial value of true.

> Description
> Do not confuse the primitive Boolean values true and false with the true and false values of the Boolean object.

> Any object whose value is not undefined or null, including a Boolean object whose value is false, evaluates to true when passed to a conditional statement. For example, the condition in the following if statement evaluates to true:

> x = new Boolean(false);
> if(x) //the condition is true

> This behavior does not apply to Boolean primitives. For example, the condition in the following if statement evaluates to false:

> x = false;
> if(x) //the condition is false

> Do not use a Boolean object to convert a non-boolean value to a boolean value. Instead, use Boolean as a function to perform this task:

> x = Boolean(expression) //preferred
> x = new Boolean(expression) //don't use

> If you specify any object, including a Boolean object whose value is false, as the initial value of a Boolean object, the new Boolean object has a value of true.

> myFalse=new Boolean(false) // initial value of false
> g=new Boolean(myFalse) //initial value of true
> myString=new String("Hello") // string object
> s=new Boolean(myString) //initial value of true

> Do not use a Boolean object in place of a Boolean primitive.

> Backward Compatibility

> JavaScript 1.2 and earlier versions. The Boolean object behaves as follows:

> - When a Boolean object is used as the condition in a conditional test, JavaScript returns the value of the Boolean object. For example, a Boolean object whose value is false is treated as the primitive value false, and a Boolean object whose value is true is treated as the primitive value true in conditional tests. If the Boolean object is a false object, the conditional statement evaluates to false.

> - You can use a Boolean object in place of a Boolean primitive.
> Property Summary

> Property | Description
> --- | ---
> constructor | Specifies the function that creates an object's prototype.
> prototype | Defines a property that is shared by all Boolean objects.

> Method Summary

> Method | Description
> --- | ---
> toSource | Returns an object literal representing the specified Boolean object; you can use this value to create a new object. Overrides the Object.toSource method.
> toString | Returns a string representing the specified object. Overrides the Object.toString method.
> valueOf | Returns the primitive value of a Boolean object. Overrides the Object.valueOf method.

> In addition, this object inherits the watch and unwatch methods from Object.

> Examples
> The following examples create Boolean objects with an initial value of false:

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

> The following examples create Boolean objects with an initial value of true:

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

> constructor

> Specifies the function that creates an object's prototype. Note that the value of this property is a reference to the function itself, not a string containing the function's name.

> Property of | Boolean
> Implemented in | JavaScript 1.1, NES 2.0
> ECMA version | ECMA-262

> Description
> See Object.constructor.

> prototype

> Represents the prototype for this class. You can use the prototype to add properties or methods to all instances of a class. For information on prototypes, see Function.prototype.

> Property of | Boolean
> Implemented in | JavaScript 1.1, NES 2.0
> ECMA version | ECMA-262

> toSource

> Returns a string representing the source code of the object.

> Method of | Boolean
> Implemented in | JavaScript 1.3

> Syntax
> toSource()

> Parameters
> None

> Description
> The toSource method returns the following values:

> - For the built-in Boolean object, toSource returns the following string indicating that the source code is not available:

>   function Boolean() {
>   [native code]
>   }

> - For instances of Boolean, toSource returns a string representing the source code.
> This method is usually called internally by JavaScript and not explicitly in code.

> See also
> Object.toSource

> toString

> Returns a string representing the specified Boolean object.

> Method of | Boolean
> Implemented in | JavaScript 1.1, NES 2.0
> ECMA version | ECMA-262

> Syntax
> toString()

> Parameters
> None.

> Description
> The Boolean object overrides the toString method of the Object object; it does not inherit Object.toString. For Boolean objects, the toString method returns a string representation of the object.

> JavaScript calls the toString method automatically when a Boolean is to be represented as a text value or when a Boolean is referred to in a string concatenation.

> For Boolean objects and values, the built-in toString method returns the string "true" or "false" depending on the value of the boolean object. In the following code, flag.toString returns "true".

> var flag = new Boolean(true)
> var myVar=flag.toString()

> See also
> Object.toString

> valueOf

> Returns the primitive value of a Boolean object.

> Method of | Boolean
> Implemented in | JavaScript 1.1
> ECMA version | ECMA-262

> Syntax
> valueOf()

> Parameters
> None

> Description
> The valueOf method of Boolean returns the primitive value of a Boolean object or literal Boolean as a Boolean data type.

> This method is usually called internally by JavaScript and not explicitly in code.

> Examples
> x = new Boolean();
> myVar=x.valueOf() //assigns false to myVar

> See also
> Object.valueOf

> Previous Contents Index Next

> Copyright © 2000 Netscape Communications Corp. All rights reserved.

Last Updated May 19, 2003