Вы не можете получить к нему доступ из-за недостатка в токенизаторе JavaScript. Javascript пытается проанализировать обозначение точки на числе как литерал с плавающей запятой, поэтому вы не можете следовать за ним со свойством или методом:
2.toString(); // raises SyntaxError
Как вы упомянули, есть несколько обходных путей, которые можно использовать для того, чтобы числовые литералы действовали как объекты. Любой из них одинаково действителен.
2..toString(); // the second point is correctly recognized
2 .toString(); // note the space left to the dot
(2).toString(); // 2 is evaluated first
Чтобы узнать больше об использовании и свойствах объекта, ознакомьтесь с Javascript Garden .