Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: JuansT en 24 de Enero 2017, 19:25

Título: JavaScript frontend Uso for in. Convertir datos a valores numéricos. CU01135E
Publicado por: JuansT en 24 de Enero 2017, 19:25
Muy buenas, me he puesto a aprender este tutorial de javascript por que me gustaría saber más sobre frontend, con el tiempo pienso ponerme con angular pero por algo se empieza.

Llevo haciendo el tutorial desde el nº1 pero no se me ocurrió subir las soluciones hasta ahora, espero que a la gente le ayude, pienso ir subiendo todas a partir de ahora.

Hago una multiplicación *1 para convertirlo a número.

Código: [Seleccionar]
<!DOCTYPE html>
<html><meta charset="utf-8">

 
<script type="text/javascript">

function cargarfor(){
var v = [];
for(var i=0;i<5;i++){
v[i] = prompt("#" + (i+1));
}
var num;
var msg="Multiplicamos por 3 los números introducidos: ";
var primero = true;
for(num in v){
v[num] = v[num]*1;
if(primero){
msg = msg + v[num] + "*3 = ";
primero=false;
}
msg = msg + ", " + v[num] + "*3 = ";
v[num] = v[num]*3;
msg = msg + v[num];
}
alert(msg + ".");
}

</script>
</head>
<body onload="cargarfor()">

</body>
</html>
Título: Re:Solución javascript CU01135E
Publicado por: bermartinv en 25 de Enero 2017, 12:17
Funciona OK
Título: Re:Solución javascript CU01135E
Publicado por: pedro,, en 25 de Enero 2017, 17:23
Hola JuansT.

Solo apuntar una cosilla, creo que se te olvidó poner el "else" en el "if" en esta parte:

Código: [Seleccionar]
if(primero){
msg = msg + v[num] + "*3 = ";
primero=false;
} else {
msg = msg + ", " + v[num] + "*3 = ";
}

Ya que de la forma que lo tienes el mensaje final se muestra así:

"Multiplicamos por 3 los números introducidos: 1*3=, 1*3=3, 2*3=6, 3*3=9, 4*3=12, 5*3=15"

Saludos. ;D
Título: Re:Solución javascript CU01135E
Publicado por: JuansT en 25 de Enero 2017, 18:57
Toda la razón Pedro, cuando hice la siguiente lección el código era parecido y allí me di cuenta del error, pero ya no me dejaba modificar el post de este hilo, dejo el código correcto:

Código: [Seleccionar]
<!DOCTYPE html>
<html><meta charset="utf-8">

 
<script type="text/javascript">

function cargarfor(){
var v = [];
for(var i=0;i<5;i++){
v[i] = prompt("#" + (i+1));
}
var num;
var msg="Multiplicamos por 3 los números introducidos: ";
var primero = true;
for(num in v){
v[num] = v[num]*1;
if(primero){
msg = msg + v[num] + "*3 = ";
primero=false;
}else{
msg = msg + ", " + v[num] + "*3 = ";
}
v[num] = v[num]*3;
msg = msg + v[num];
}
alert(msg + ".");
}

</script>
</head>
<body onload="cargarfor()">

</body>
</html>
Título: Re:Solución javascript CU01135E
Publicado por: pedro,, en 27 de Enero 2017, 09:08
Ahora todo perfecto.

Saludos.  ;D