↑
Main Page
Logical AND
In this example, a Boolean variable (
found
) keeps track of the success of a search. When the item in
question is located,
found
is set to
true
, which causes
!found
to equal
false
, meaning that execution
will escape the
while
loop.
The logical NOT operator is also useful in determining the Boolean equivalent of an ECMAScript vari-
able. In order to do this, you use two logical NOT operators in a row. The first NOT returns a Boolean
value no matter what operand it is given. The second NOT negates that Boolean value and so gives the
true Boolean value of a variable.
var bFalse = false;
var sBlue = “blue”;
var iZero = 0;
var iThreeFourFive = 345;
var oObject = new Object;
document.write(“The Boolean value of bFalse is “ + (!!bFalse));
document.write(“<br />The Boolean value of sBlue is “ + (!!sBlue));
document.write(“<br />The Boolean value of iZero is “ + (!!iZero));
document.write(“<br />The Boolean value of iThreeFourFive is “ +
(!!iThreeFourFive));
document.write(“<br />The Boolean value of oObject is “ + (!!oObject));
Running this example yields the following output:
The Boolean value of bFalse is false
The Boolean value of sBlue is true
The Boolean value of iZero is false
The Boolean value of iThreeFourFive is true
The Boolean value of oObject is true
Logical AND
The logical AND operator in ECMAScript is indicated by the double ampersand (
&&
):
var bTrue = true;
var bFalse = false;
var bResult = bTrue && bFalse;
Logical AND behaves as described in the following truth table:
Operand 1
Operand 2
Result
true
true
true
true
false
false
false
true
false
false
false
false
Logical AND can be used with any type of operands, not just Boolean values. When either operand is
not a primitive Boolean, logical AND does not always return a Boolean value:
44
Chapter 2
05_579088 ch02.qxd 3/28/05 11:35 AM Page 44
Free JavaScript Editor
Ajax Editor
©
→ R7