https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Number/toString
As the Number object overrides the toString method of the Object object, you first have to explicity use paranthesis to indicate that it is a number, and not an object.
My guess is that 2. implicitly defines it as a float, which is then able to use the .toString() method of the Number object, and not the method of the Object object.