3.0.5

Further syntax errors in source code

There are some instances of !== in the code. I take it they should be just !=
Anthony M.
July 27,
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.
July 27,
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.
July 27,

This topic is archived.

See also:


Back to support forum