Well, the reason toPrecision() uses the exponential format in the example
Number=123.45; Number.toPrecision(2) // returns 1.2e+2
is to show clearly the two significant figures. Whereas with 120, the number of significant figures is not clear since it could be 2 or 3.
My apologies, toPrecision() is fine.
Yet, in many cases we would like to keep the decimal format, and 120 would be preferred over 1.2e+2.