Estoy intentando entender un código que he visto (ingeniería inversa
) pero no llego a entender el funcionamiento del append.Es un problema de novato total, pero bueno, llevo atascado un día aquí y no encuentro la lógica.
Os pongo el código HTML:
Código HTML:
<!DOCTYPE HTML> <html lang="es"> <head> <meta charset="utf-8"> <title>Operando con JSON</title> </head> <body> <h1>JSON</h1> <div id="coins"> <h2>Monedas</h2> </div> <script type="text/javascript" src="js/json.js"></script> </body> </html>
Código:
Por lo que entiendo ocurre lo siguiente:'use strict'
// JSON - Javascript Object Notation
var cryptos = {
titulo: 'Bitcoin',
year: 2009,
creador: 'Satoshi Nakamoto'
};
var monedas = [
{titulo: "Euro", year: 2000, pais: "España"},
cryptos
];
var caja_monedas = document.querySelector("#coins");
var index;
for (index in monedas){
var p = document.createElement("p");
p.append(monedas[index].titulo + " - " + monedas[index].year);
caja_monedas.append(p);
}
1. Se crea una variable llamada caja_monedas que es un querySelector del div con id #coins. Esto se utiliza para modificar dicho div.
2. Se crea un bucle for in donde primero se forma una variable (p) donde se crea el elemento <p>.
3. En el mismo bucle se concatena el <p> con el array mediante un append -> p.append(monedas[index].titulo + " - " + monedas[index].year);
4. Se concatena caja_monedas con el <p>.
Creo que lo estoy analizando mal porque no tiene sentido según lo entiendo.
En todo caso, se debería concatenar de esta forma:
querySelector+<p>+array+<p>
Es decir, el querySelector es quien da la "orden" de modificar ese div en el html, seguido de <p> para abrir párrafo y por último el array. Pero esa última línea de javascript...me da que no lo estoy entiendo bien.
¿Algún rayo de luz?
Gracias!!





