--- id: 587d7fae367417b2b2512be5 title: Convertire dati JSON ad HTML challengeType: 6 forumTopicId: 16807 dashedName: convert-json-data-to-html --- # --description-- Ora che stai ricevendo dati da un'API JSON, puoi mostrarlo nell'HTML. Puoi usare un metodo `forEach` per iterare sui dati visto che gli oggetti di foto per gatti sono immagazzinati in un array. Iterando su ogni elemento, puoi modificare gli elementi HTML. Come prima cosa, dichiara una variabile html con `let html = "";`. Poi, itera sul JSON, aggiungendo HTML alla variabile con le chiavi degli oggetti racchiuse in tag `strong`, seguite dal valore. Quando il ciclo ha finito, lo presenti. Ecco il codice che lo fa: ```js let html = ""; json.forEach(function(val) { const keys = Object.keys(val); html += "
"; keys.forEach(function(key) { html += "" + key + ": " + val[key] + "
"; }); html += "

"; }); ``` **Nota:** per questa sfida devi aggiungere nuovi elementi HTML alla pagina quindi non puoi usare `textContent`. Invece, devi usare `innerHTML`, il quale può rendere i siti vulnerabili ad attacchi di cross-site scripting. # --instructions-- Aggiungi un metodo `forEach` per iterare sui dati JSON e creare gli elementi HTML per mostrarli. Ecco alcuni esempi di JSON: ```json [ { "id":0, "imageLink":"https://s3.amazonaws.com/freecodecamp/funny-cat.jpg", "altText":"A white cat wearing a green helmet shaped melon on its head. ", "codeNames":[ "Juggernaut", "Mrs. Wallace", "Buttercup" ] } ] ``` # --hints-- Il tuo codice dovrebbe salvare i dati nella variabile `html` ```js assert(__helpers.removeWhiteSpace(code).match(/html(\+=|=html\+)/g)) ``` Il tuo codice dovrebbe usare un metodo `forEach` per iterare sui dati JSON ricevuti dalla API. ```js assert(code.match(/json\.forEach/g)); ``` Il tuo codice dovrebbe racchiudere i nomi delle proprietà in tag `strong`. ```js assert(code.match(/.+<\/strong>/g)); ``` # --seed-- ## --seed-contents-- ```html

Cat Photo Finder

The message will go here

``` # --solutions-- ```html

Cat Photo Finder

The message will go here

```