I'm trying to understand difference between 4 and (4). 
4.toString(); // SyntaxError: Unexpected token ILLEGAL
(4).toString(); // "4"I thought it's because toString() method is defined on Number (object) and 4 is a primitive datatype i.e.number which doesn't have toString() method.  
However, how does it works for (4).toString()?
4 === (new Number(4)) // false
(4) === (new Number(4)) // false. (4) is not an instance of Number object 
    