entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

1voto

problema con la sentencia condicional

si corro mi ciclo sin la condicional me genera numeros aleatorios de 4 hasta 6 digitos y lo mete en un array, pero si le digo que solo le meta numeros de 6 digitos no me genera ningun numero, el resultado se puede visualizar en la pagina

    function combinar(){

        codigos = [];

            for(var x=0; x<100; x++){

                combo =  Math.floor((Math.random() * 1000000) + 1);

            if(combo.length == 6) {

                codigos.push(combo);

                document.getElementById('codigod').innerHTML += codigos[x]+"<br>"  }

}

si quito la condicional me genera los codigos y me lo imprime en la pagina sin ningun problema

mi intencion es que genere solo numeros aletorios de 6 digitos

1 Respuesta

1voto

morgooth Puntos2320

Estimado,

El problema es que la función length te devuelve el largo de una cadena de caracteres, al ser numérica tu variable combo no te va a funcionar.

Para solucionar esto intenta con :

 if(combo.toString().length == 6) {

Saludos

riccardo94 comentado Sep 4, 2017

muchas gracias, no me habia dado cuenta, ahora sin embargo me genera muchos undefined, si tienes algun truco pa evitar eso me ahorras un buen rato

morgooth comentado Sep 4, 2017

Revisa la función Math.floor

En tu código estas diciendo que parta en 1.

https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/Math/random

Saludos

riccardo94 comentado Sep 4, 2017

en que momento le digo que parta en 1, no entiendo

riccardo94 comentado Sep 4, 2017

me da el mismo error aunque use una libreria externa mathJS

Por favor, accede o regístrate para responder a esta pregunta.

¿Conoces alguien que puede responder?
¡Comparte esta pregunta!


Otras Preguntas y Respuestas


Actividad Reciente

...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta