10 Apr

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.

If you enjoyed this post, signup to the newsletter to be notified when there's new content, new courses and exclusive offers.

If you enjoyed this article please feel free to share it on Twitter.