Tell us what’s happening:
Descrivi qui il tuo problema in dettaglio.
non riesco propio a capire come svolgere questo intero problema dall’inizio alla fine, potrei guardare i suggerimenti il codice gia compilato ma ho letto nel forum che è meglio chiedere aiuto per imparare meglio anche se non so bene come iniziare. grazie
Your code so far
// Setup
const recordCollection = {
2548: {
albumTitle: 'Slippery When Wet',
artist: 'Bon Jovi',
tracks: ['Let It Rock', 'You Give Love a Bad Name']
},
2468: {
albumTitle: '1999',
artist: 'Prince',
tracks: ['1999', 'Little Red Corvette']
},
1245: {
artist: 'Robert Palmer',
tracks: []
},
5439: {
albumTitle: 'ABBA Gold'
}
};
// Modifica il codice solo sotto questa riga
function updateRecords(records, id, prop, value) {
return records;
}
updateRecords(recordCollection, 5439, 'artist', 'ABBA');
Your browser information:
Lo user agent è: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36
Challenge Information:
JavaScript Base - Collezione di dischi
Ciao @redelk721,
intanto, hai capito come è strutturato l’oggetto recordCollection
?
L’oggetto consiste in una serie di proprietà (i numeri identificativi degli album), a cui sono associati altri oggetti (gli album stessi).
Ogni album contiene a sua volta 3 proprietà cioè l’artista, il titolo e un array con le canzoni. Capire la struttura dell’oggetto e come accedere alle varie parti è fondamentale per svolgere qualsiasi operazione su di esso.
Secondo punto: capire le richieste della sfida.
Sono scritte nell’elenco puntato alla fine e se provi a testare il codice senza modifiche, puoi vedere cosa manca. Questo aiuta molto a vedere cosa non sta funzionando o cosa manca!
Tutte le richieste dipendono dal parametro stringa value
, quindi per prima cosa dovresti controllare se la stringa value
è vuota oppure no con un if ... else
.
Se è vuota, accedi all’album corrispondente al numero identificativo e elimini la proprietà prop
(seconda richiesta).
Se non è vuota, devi controllare il parametro prop
. Anche questo può essere fatto con un if...else
o un if...else if
. A seconda del valore di prop
, devi modificare la proprietà corrispondente.
Se non è tracks
(cioè è albumTitle
o artist
), modifichi il suo valore usando il parametro value
.
Se è tracks
, devi controllare che ci sia una proprietà array tracks
dentro l’album. Se non c’è la crei con un array vuoto. Anche quest controllo puoi farlo con un if
. Una volta che tracks
è un array, fai il push di value
in fondo all’array.
Spero di essere stata sufficientemente chiara, è un sacco di roba. La parte più difficile è come annidare i vari controlli correttamente.
In bocca al lupo!!
grazie sei stata molto utile
2 Likes