Hace 17 años | Por pirulingo3003 a kriptopolis.org
Publicado hace 17 años por pirulingo3003 a kriptopolis.org

Al menos eso es lo que parece, porque aquí cada uno interpreta el mismo código Javascript como le da la real gana. A ver, hagamos la prueba... Con Firefox y Opera el resultado es 81, con Konqueror me da 78, con Explorer 69... vía http://www.kriptopolis.org/node/2648

Comentarios

p

jajajaja blonde, muy buena!

D

Safari da 78 también lol

D

#1 Safari esta basado y usa activamente código de Konqueror asi que es bastante común que se comporten igual.

MrBlonde

Resulta que IE es el mejor explorador después de todo... No tendrá pestañas pero sí agujeros, y además sabe contar caracteres, como yo el primer día que que programé (función contar_as[..]) lol

ys_

En absoluto. El código es:

function func()
func();

El objeto arguments.callee se refiere a la misma función en la que estás. Lo que hace es convertir la función a una cadena, pero al hacer esto algunos navegadores le añaden unos indentados más o menos, por lo que al contar los caracteres salen diferencias.

Es algo que se aprecia si ponemos el texto en el alert directamente:

function func()
func();

Podemos comprobarlo cambiando un poco el código también para escribirlo en el documento:

function func()
func();

Ahora lo llamamos con Konqueror y nos muestra:

function func()
"+l+"
");
">


Y con Firefox:

function func()
" + l + "

");
">

Horus

Excelente explicacion #2

PD: el Epiphany da 81

p

tan bien puedes contar a mano la cantidad de letras que existen en la funcion:

"function func()"

son 69 letras que es lo que devolveria si lo hiciera correctamente, si añades un return al principio y otro al final daria 71 o 74 si pones solo #13 o #10#13 si a demas añades como conqueror un return simple por sentecia pues daria 78 y si añades un return doble por sentencia 81.

: )

si le haces la raiz cuadrada no se exactamente el valor que dara pero seguro que es menor

errepunto

#1, creo que el Safari y el konqueror tienen el mismo motor de renderizado (como Firefox y Mozilla).

Lo que no entiendo es por qué no se hace un estandar para el Javascript de una vez por todas. Microsoft no lo aplicará, como de costumbre, pero el resto de navegadores si que podrían hacerlo.