Problemas al convertir de String a Int en Actionscript/Javascript

En Actionscript solamente sucede en la versión 2.0
En la 3.0 al parecer ya por defecto lo solucionaron.

Estuve volviendome loco un par de horas intentando descubrir el motivo por el cual

parseInt("0120") // da 80

Me devolvía 80 y no 120. Primero pensé que estaba dandome algún tipo de conversión hexadecimal sin sentido, pero tras un rato jugando con la calculadora vi que realmente lo que estaba haciendo era devolvermelo en octal.

Tras echar un ojo a la ayuda de Flash, encontré que por defecto, interpreta que todo número que comience por cero, es un octal. Menuda gracia. No se en que momento pensaron que esto sería útil dejarlo asi por defecto.

Asi que para solucionarlo, al convertir, usad el otro argumento de parseInt, que es el que te da la base del sistema que quieras usar. En mi caso, lo quería en el sistema decimal, por tanto

parseInt("0120",10) //da 120

 

Sucede lo mismo en javascript.