The Equality and Inequality Operators

We use the equality operator (==) to test whether two expressions have the same value. The equality test takes the general form:

               operand1 == operand2

where operand1 and operand2 may be any valid expression. The equality operator can compare operands of any type. When operand1 and operand2 are equal, the expression returns the Boolean value true; when they differ, it returns the Boolean value false. For example:

var x = 2;
x == 1     // false
x == 2     // true


The equality operator is created using two equal signs in a row (==). It determines whether two expressions are equal and should not be confused with the assignment operator (=) which is used to assign a variable a new value.

Consider this example:

if (x = 5) {
  trace ("x is equal to 5")

The preceding example does not check whether x equals 5. Instead, it sets x equal to 5. The proper expression is as follows:

// Use == instead of =
if (x == 5) {  
  trace ("x is equal to 5")

Primitive Datatype Equality

For the primitive datatypes, the result of most equality tests is fairly intuitive. Table 5.2 lists the rules that govern equality for each primitive datatype.

Table 5-2. Equality of Primitive Datatypes


Terms of Equality (both operands must be of given type)


If operand1 is the same number as operand2, the result is true. If both operands are +Infinity or both are -Infinity, the result is true. If both operands are either -0 or +0, the result is true. For all other combinations, including ...

Get ActionScript: The Definitive Guide now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.