Question

Why doing this

123.toString()

gives an error...

but this

(123).toString()

Works OK

if possible and "at low level" answer (JIT/Interpreter parsing tokens decisions)

Was it helpful?

Solution

The JavaScript interpreter considers the . to be a decimal point, and therefore does not expect an alphabet character to follow it, hence the "unexpected token" error. Putting 123 in parentheses tells the interpreter, "run toString() on this object."

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top