Hacker News new | ask | show | jobs
by josefx 2213 days ago
If that is a combination of octal and decimal how is 058 not a parser error?
1 comments

`072` is interpreted as octal, and `058` is interpreted as decimal (7ยท8+2 = 58). Ah, the dumpster fire that is JavaScript.
Prefixing octal numbers by zero was a common convention. The real dumpster fire was all those intermediate years without an octal notation in strict mode. (If you needed them, either forget strict mode, or choose between converting to meaningless decimals or using strings and feeding them through parseInt. What's sane about this?)

However, 058 should have been a parse error.

I agree. That inconsistency in how the `0` prefix is handled shouldn't exist.