JavaScript defines true as anything other than 0 (zero), "" (empty string), null, undefined, and false.
Logical AND (&& )
The logical AND operator (&&) returns true if the expression to the both sides of the operator evaluates to true.
If either the left, right, or both expressions evaluate to false, the result of the operation is false.
The AND operation begins by evaluating the left operand.
If the left operand evaluates false, the basic logic of the AND operator is complete.
But if the left operand evaluates true, the right operand must be evaluated.
Logical OR
The logical OR operator (||) returns false if the expression to the both sides of the operator evaluates to false.
If one of the left and the right expressions evaluate to true, the result of the operation is true.
The OR operation begins by evaluating the left operand.
If the left operand evaluates true, the basic logic of the OR operator is complete.
But if the left operand evaluates false, the right operand must be evaluated.
Logical NOT
If the expression evaluates to true, the result of the logical NOT operator (!) is false.
If the expression evaluates to false, the result is true.
When the expression evaluates to a non-Boolean value, it is converted to true or false before performing the inversion.
Identity
If the value on the left is equal to the value on the right side of the operator, true is returned from the identity operator (===).
If the values are not equal, false is returned.
No type-conversion is performed on the operands before the comparison.
Non-Identity
If the value on the left is not equal to the value on the right side of the operator, true is returned from the non-identity operator (!==).
If the values are equal, false is returned.
No type-conversion is performed on the operands before the comparison is made.
The identity and non-identity operators are only available in JavaScript 1.3 and later.
<html>
<script language="JavaScript">
<!--
x = 3;
if((2==x) && (x=5)) {
document.write("The && evaluated TRUE!<br>");
}
else
{
document.write("The && evaluated FALSE!<br>");
}
document.write("x=",x,"<br>");
-->
</script>
</html>