Autor Tema: JavaScript JS declaración de arrays o arreglos estáticos con índice CU01121E  (Leído 1155 veces)

Angeliyo

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 11
    • Ver Perfil
Hola, esta consulta es relativa al ejercicio CU01121E del taller de programación web desde cero con JavaScript de aprenderaprogramar.

Código: [Seleccionar]
var nombres = new Array();
nombres = prompt('introduce 3 nombres');
nombres [0]= "";
nombres [1]= "";
nombres [2]= "";

alert('Contenido de ejemplo: '+ nombres);

Mi duda es si este código está bien hecho. ¿Tambien podrá haber sido así?:

nombres = ["" ,"", ""].

Muchas gracias y muy amable.
« Última modificación: 19 de Junio 2022, 13:58 por Ogramar »

Kabuto

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 988
    • Ver Perfil
Re: Ejercicio del codigo CU01121E de Js,, arrays
« Respuesta #1 en: 13 de Mayo 2022, 11:15 »
No, no es correcto.

Aquí declaras un array, esto está bien:
Código: [Seleccionar]
var nombres = new Array();
Pero aquí, al usar prompt(), ahora "var nombres" ha dejado de ser un array.
Código: [Seleccionar]
nombres = prompt('introduce 3 nombres');Ahora es un string, porque eso es lo que retorna la instrucción prompt().

Por estas cosas soy amante de los lenguajes fuertemente tipados je je.
JavaScript tiene un tipado débil y a la que te despistas, un array pasa a ser un string, un string pasa a ser un dato numérico, un numérico pasa a ser un objeto de clase....

Por otra parte, suponiendo que prompt() hubiera funcionado y te hubiera dado tres nombres para guardar en el array, esos nombres los estarías machacando en las siguientes líneas:
Código: [Seleccionar]
nombres [0] = "";
nombres [1]= "";
nombres [2]= "";
Aquí lo que estás haciendo es colocar cadenas vacías en las tres posiciones del arreglo, así que estarías borrando los nombres, si es que los hubieras conseguido.

Si queremos tres nombres, hay que usar tres prompt().
El string resultante de cada prompt(), lo colocaremos en distintas posiciones del array

Prueba este script:
Código: [Seleccionar]
<script>
var nombres = new Array();
alert('introduce 3 nombres a continuación');
nombres[0] = prompt("Nombre 1:");
nombres[1] = prompt("Nombre 2:");
nombres[2] = prompt("Nombre 3:");
alert("Nombres ingresados: " + nombres);
</script>
NO respondo dudas por mensaje privado
Publicando vuestras dudas en el foro público conseguimos:
- Que más gente aporte respuestas mejores o complementarias.
- Que otras personas puedan aprender de vuestras dudas.

Mejor en PÚBLICO que en privado. Gracias

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".