This article's content
JavaScript Fails
> typeof NaN
"number"

> 99999999999999999
100000000000000000

> 0.5+0.1==0.6
true

> 0.1+0.2==0.3
false

> Math.max()
-Infinity

> Math.min()
Infinity

> []+[]
""

> []+{}
"[object Object]"

> {}+[]
0

> true+true+true===3
true

> true-true
0

> true==1
true

> true===1
false

> (!+[]+[]+![]).length
9

> 9+"1"
"91"

> 91-"1"
90

> []==0
true

About Author

Mathias Bothe To my job profile

I am Mathias, born 40 years ago in Heidelberg, Germany. Today I am living in Munich and Stockholm. I am a passionate IT freelancer with more than 16 years experience in programming, especially in developing web based applications for companies that range from small startups to the big players out there. I am founder of bosy.com, creator of the security service platform BosyProtect© and initiator of several other software projects.