[javascript] Problema con while.

Iniciado por Ori-chan, 1 Enero 2013, 00:45 AM

0 Miembros y 1 Visitante están viendo este tema.

Ori-chan

Código (language) [Seleccionar]

<html>
<head>
<title>AAA</title>
</head>
<script type="javascript">
n=0;

function asdf () {
while ( n == 100 ) {
n++;
document.write (n + "probando");
}
}

</script>

<body onload="asdf()">
</body>
</html>


Se supone que tiene que escribirse 100 veces el numero por el que va y la palabra probando.

(Supongo que sera algún fallo tonto, pero no logro averiguar cual)


#!drvy

Hola,

Código (html4strict) [Seleccionar]
<script type="javascript">

Seria

Código (html4strict) [Seleccionar]
<script type="text/javascript">

Si lo declaras mal, el navegador no lo carga.



Código (javascript) [Seleccionar]
while ( n == 100 ) {

Con esto lo que dices es que mientras n es igual a 100 el while se cumplirá. Lo que tienes que indicar es que mientras n sea menor a 100.

Código (javascript) [Seleccionar]
while (n < 100) {

Saludos

Ori-chan

Muchas gracias. Yo creia que lo de while era que se tenia que cumplir la orden hasta que n fuera igual a 100... Creo que es asi en python.


ericksav22

#3
Eeemm una pregunta, por qué declaraste la variable "n" afuera de tu función? eso no la afecta en nada y como dice drvy | BSM la condición del while está mal en todo caso tu función debe quedar así:


function asdf () {
n=0;
while ( n < 100 ) {
n++;
document.write (n + "probando");
}
}

o así:

function asdf () {
n=1;
while ( n <= 100 ) {
n++;
document.write (n + "probando");
}
}

en sí es lo mismo n.n perdón por volver a decirte lo que drvy | BSM ya te había dicho pero me gusta mucho resolver dudas acerca de programación xD

Ori-chan

Yo no creo que este mal. Porque con lo que me dijo lo arregle y me.iba bien. Pero gracias de todas formas.


#!drvy

CitarEeemm una pregunta, por qué declaraste la variable "n" afuera de tu función?

Normalmente, cuando declaras una variable fuera de una función, esta se convierte en global, pudiendo acceder a ella desde funciones. Lo correcto seria declararla así:

Código (javascript) [Seleccionar]
var n=0;

Pero los motores de javascript de hoy en día son lo suficientemente listos como para entender que se trata de una variable global.

Saludos

ericksav22

Cita de: drvy | BSM en  8 Enero 2013, 20:53 PM
Normalmente, cuando declaras una variable fuera de una función, esta se convierte en global, pudiendo acceder a ella desde funciones. Lo correcto seria declararla así:

Código (javascript) [Seleccionar]
var n=0;

Pero los motores de javascript de hoy en día son lo suficientemente listos como para entender que se trata de una variable global.

Saludos

Orale es que yo casi no programo en javascript, yo programo en C/C++, PHP y Java, es que debe ser que estoy muy acostumbrado al main() y olvido que si declaras variables afuera de él automáticamente son globales jeje, bueno en java si las quiero globales las declaro como public ;)