JavaScript programs may generate unexpected results if a programmer accidentally uses an assignment operator (=), instead of a comparison operator (==) in an if statement.

This if statement returns false (as expected) because x is not equal to 10:

var x = 0;
if (x == 10)

This if statement returns true (maybe not as expected), because 10 is true:

var x = 0;
if (x = 10)

This if statement returns false (maybe not as expected), because 0 is false:

var x = 0;
if (x = 0)

An assignment always returns the value of the assignment.



Practice Excercise Practice now