Explore the weird, wonderful, and sometimes confusing behaviors of JavaScript
JavaScript has some surprising truthy and falsy values. Not everything is as it seems!
JavaScript uses IEEE 754 floating point numbers, which can lead to precision errors.
JavaScript's automatic type conversion can produce bizarre results.
NaN has some very peculiar properties that defy logic.
The Array constructor behaves differently based on the number of arguments.
The difference between == (loose) and === (strict) equality can be surprising.
parseInt() has some unexpected behaviors with certain inputs.
The value of 'this' depends on how a function is called, not where it's defined.
JavaScript automatically inserts semicolons, sometimes in unexpected places.
These quirks are features, not bugs! Understanding them makes you a better JavaScript developer.
Back to Home