:: Forum >>

Further syntax errors in source code

There are some instances of !== in the code. I take it they should be just !=
Anthony M.
Wednesday, July 27, 2005
Maybe not. != is "not equal to," "!==" is the strict inequality operator, which tests to see if instances are the same. It's the opposite of "===", which is the strict equality operator.

So for example, given a = 5 and b = 5, a == b, but a !== b, because a and b don't point to the same instance of a variable.
Wednesday, July 27, 2005
Wrong; in your example, (a !== b) is false (or conversly, a === b).
The ECMAScript spec says:

11.9.6 The Strict Equality Comparison Algorithm

The comparison x === y, where x and y are values, produces true or false. Such a comparison is performed as follows:

1.If Type(x) is different from Type(y), return false.

2.If Type(x) is Undefined, return true.

3.If Type(x) is Null, return true.

4.If Type(x) is not Number, go to step 11.

5.If x is NaN, return false.

6.If y is NaN, return false.

7.If x is the same number value as y, return true.

8.If x is +0 and y is -0, return true.

9.If x is -0 and y is +0, return true.

10. Return false.

11.If Type(x) is String, then return true if x and y are exactly the same sequence of characters (same length and same characters in corresponding positions); otherwise, return false.

12. If Type(x) is Boolean, return true if x and y are both true or both false; otherwise, return false.

13.Return true if x and y refer to the same object or if they refer to objects joined to each other (see 13.1.2). Otherwise, return false.
Wednesday, July 27, 2005

This topic is archived.


Back to support forum

Forum search