JS WTF: 5 < 4 < 3
A quick fun "JS WTF?" post for you today. If you load up your JavaScript console & enter:
5 < 4 < 3
You'd be expecting to see false
, right? However, you'll actually see true
. WTF?
This is actually down to the way JavaScript evaluates this and operator precedence. What it sees is:
(5 < 4) < 3
Which in turn gives
false < 3
JavaScript then coerces false
into an integer 0
:
0 < 3
And zero is indeed less than 3, so we get true
returned.
Not much learned from this one but it's quite a fun thing to show someone & then explain why. I'll be trying to do a lot of these small "fun" posts as there's a fair few areas of "WTF?" in JavaScript, as we all know.