Hola a todos:
Últimamente estoy en esta lista y aprendo mucho con vosotros. Gracias.
Vamos a ver, el caso es que en una aplicación voy guardando en cookies el
estado de algunas cosillas en diferentes páginas y al final me salen cadenas
como 111002100111011011101112221111001112222 , ya que guardo por cada una el
valor 0,1 o 2 según corresponda. Como esta cadena podría ser muy larga se
me ha ocurrido pasar este número a base 32 y así guardo una variable más
corta, luego lo paso a base 3 y listo.
La idea se puede ver con este ejemplo y poniendo un número compuesto por
ceros, unos y doses en el primer campo de texto:
createTextField("Base3", 10, 25, 25, 525, 40);
Base3.text = "Base3";
Base3.type = "input";
createTextField("Binary", 20, 25, 75, 525, 40);
Binary.text = "two";
Binary.wordWrap = true;
createTextField("Base3Again", 30, 25, 125, 525, 40);
Base3Again.text = "Base3Again";
Base3Again.wordWrap = true;
Base3.onChanged = function(){
var numbr = parseInt(this.text,3);
Binary.text = numbr.toString(32);
numbr=parseInt(Binary.text,32)
Base3Again.text= numbr.toString(3);
}
Todo bien y la idea parece que funciona mientras sólo se introduzcan 20
dígitos. A partir del dígito 21 ya no da el mismo resultado. ¿Alguien sabe
por qué es esto?
Gracias, un saludo y feliz año!!!
----------------------------------
Lista ASNativos:[email protected]
http://www.5dms.com/listas
----------------------------------