JavaScript - Ayuda con 4 líneas de código

 
Vista:
sin imagen de perfil

Ayuda con 4 líneas de código

Publicado por Eddy (6 intervenciones) el 25/11/2017 16:42:08
Buenas tardes a todo el mundo, he estado haciendo un ejercicio poco a poco y mediante la ayuda de internet, funciona correctamente pero hay cuatro líneas que no las entiendo, y me gustaría que me la explicaseis si podéis. Os pondré todo el programa, pero os diré que es, para no haceros un lío.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
<html>
	<head>
		<title>Crear y editar tablas con JS</title>
		<meta charset="utf-8">
		<h3>Crear y editar tablas con JS<hr></h3>
 
		<script type="text/javascript">
			var contenidoTabla = new Array (0);   /* Array usado para el contenido de la tabla */
 
			function rellenarTabla() {
				while (miTabla.rows.length>1) miTabla.deleteRow(1);  /* While usado para crear fila por fila, y que no se guarden varias a la vez */
				for (fila=0;fila<contenidoTabla.length;fila++) {     /* for usado para añadir filas */
					var objRow = miTabla.insertRow();
					var objCell;
 
					for (columna=0;columna<contenidoTabla[fila].length;columna++) {  /* for usado para añadir columnas */
						objCell = objRow.insertCell();
						objCell.innerText = contenidoTabla [fila][columna];
					}
				}
			}
 
			function añadir() {
				with (document.formulario) {   /* Con with se coge los datos del formulario */
				contenidoTabla.push(new Array(nombre.value,apellido.value,dni.value,comentarios.value)); /* Y con push, guardamos los datos del formulario en el array que hemos creado arriba */
				reset();   /* Con este reset, al rellenar el formulario y guardarlo, se borra para introducir otros datos */
				}
				rellenarTabla();  /* Al tener todos los datos, llamamos a la función que nos añade los datos a la tabla */
			}
 
		</script>
	</head>
 
	<body bgcolor="#abffed" onload="rellenarTabla();">
		<!-- ================== FORMULARIO ============================= -->
		<form name="formulario" method="POST" action="#">
			<table>
				<tr>
					<td>Nombre</td>
					<td><input type="text" name="nombre"><br></td>
				</tr>
 
				<tr>
					<td>Apellido</td>
					<td><input type="text" name="apellido"><br></td>
				</tr>
 
				<tr>
					<td>DNI</td>
					<td><input type="text" name="dni"><br></td>
				</tr>
 
				<tr>
					<td>Comentario</td>
					<td><textarea name="comentarios"></textarea><br></td>
				</tr>
			</table>
 
			<p/>
			<input type="button" name="Añadir" value="Añadir" onClick="añadir()">
			<input type="reset" name="Reset" value="Reset">
		</form>
		<!-- ========================================================================== -->
 
		<!-- ============== TABLA FIJA DONDE SE VISUALIZA ========================== -->
		<table id="miTabla" bgcolor="#ffffcc" width="87%" border="1">
			<tr bgcolor="#ffcccc">
				<th>Nombre</th>
				<th>Apellido</th>
				<th>DNI</th>
				<th>Comentario</th>
			</tr>
		</table>
		<!-- ======================================================================= -->
 
	</body>
</html>

Ese es el código, se trata de añadir en una tabla lo que ponemos en los inputs de un formulario, lo que no entiendo es la función de "rellenarTabla", la he intentado comentar pero sigo sin entenderla entera, ¿podiais explicarme que hace cada for y cada línea de los dos for?
Muchas gracias por vuestra ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.162
Oro
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Ayuda con 4 líneas de código

Publicado por xve (2100 intervenciones) el 25/11/2017 19:52:17
Hola Eddy, intento explicarte...

1
while (miTabla.rows.length>1) miTabla.deleteRow(1);
Esta instruccion va eliminando todas las filas de al tabla "miTable"

1
for (fila=0;fila<contenidoTabla.length;fila++)
Recorre todos los elementos del array "contenidoTabla", que a su vez contiene un array con cada una de las columnas

1
for (columna=0;columna<contenidoTabla[fila].length;columna++)
Este bucle se encuentra dentro del bucle anterior, y lo que hace es recorre cada una de las columnas de cada uno de los elementos del array "contenidoTabla"

No se si me he sabido explicar...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar