http://eloquentjavascript.net/
There are six basic types of values in JavaScript: numbers, strings, Booleans, objects, functions, and undefined values
JavaScript uses a fixed number of bits, namely 64 of them, to store a single number value
There are three special values in JavaScript that are considered numbers but don’t behave like normal numbers: Infinity, -Infinity and NaN
The first two are Infinity and -Infinity, which represent the positive and negative infinities. NaN stands for “not a number”, even though it is a value of the number type