The risk of changing this now is that there could be existing code that relies of both 0 and -0 having the same behavior. Generally speaking ECMAScript tired to remain backwards compatible so that older websites continue to work in newer browsers.
Your solution is good, but what's the point of using substr with a minus sign if we need to switch to the plus one in order to ensure the stable work of the program? Maybe the usage of minus sign should be discouraged (while being allowed for backwards compatibility)?
The minus signs work great and are very convenient if you're dealing with numeric literals. If you're not dealing with literals, and are instead trying to autogenerated the index from a different number, the. Yeah, you need to watch out for the zero case.