0

funcion length en javascript. me da error al contar los numeros y sale del bucle meta la cantidad de digitos que meta

do{
let num=prompt("introduce 5 numeros");
}while(num.length!=5)
Einer
  • 20,190
  • 2
  • 14
  • 36
  • 3
    Y el error es...? Lee [ask]. – padaleiana Jul 17 '21 at 11:12
  • 2
    Recuerda que `let` tiene alcance de bloque, por lo tanto la declaración de `num` dentro del bucle está aislada y es diferente de la variable `num` que aparece en tu sentencia `while`. Supongo que el error en consola es: `Uncaught ReferenceError: num is not defined` . Una opción es declarar tu variable fuera del bucle (antes de hacer `do` y otra opción es declarar la variable con `var`, ejemplo: `var num = prompt( ... );`. En todo caso, una lectura a [*var, let const o nada en Javascript*](https://es.stackoverflow.com/questions/106042/var-let-const-o-nada-en-javascript) no viene mal. Saludos – Mauricio Contreras Jul 17 '21 at 12:06
  • hola saludos gracias en verdad que si pero lo he probado y no me funciona de igual forma var y no me funciona nose por que saludos – gataka1984 Jul 17 '21 at 12:18
  • Y cual es el error? – Víctor Hugo Tirado Jul 17 '21 at 13:08

1 Answers1

0

Intenta declarando la variable num fuera del bloque do/while:

    let num = "";
    do{
      num = prompt("introduce 5 numeros");
    } while( num.length != 5 )

Estas declarando la variable num dentro del bloque do por lo que al momento de verificar si num difiere de 5 entonces lanza el error de que num no esta definido.

Einer
  • 20,190
  • 2
  • 14
  • 36
  • muchisimas muchisimas gracias de verdad de verdad que si muchas gracias.... pude reolsverlo gracias ti muchas gracias y a todos los que me ayudaron saludos – gataka1984 Jul 18 '21 at 11:35