Tell us what’s happening:
Describe your issue in detail here.
PLEASE HELP
, I cannot get through this challenge to save my life-
Record Collection
You are given an object literal representing a part of your musical album collection. Each album has a unique id number as its key and several other properties. Not all albums have complete information.
You start with an updateRecords function that takes an object literal, records, containing the musical album collection, an id, a prop (like artist or tracks), and a value. Complete the function using the rules below to modify the object passed to the function.
- Your function must always return the entire record collection object.
- If
propisn’ttracksandvalueisn’t an empty string, update or set that album’sproptovalue. - If
propistracksbut the album doesn’t have atracksproperty, create an empty array and addvalueto it. - If
propistracksandvalueisn’t an empty string, addvalueto the end of the album’s existingtracksarray. - If
valueis an empty string, delete the givenpropproperty from the album.
Note: A copy of the recordCollection object is used for the tests
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'
}
};
// Only change code below this line
function updateRecords(records, id, prop, value) {
let tracks = records[id][prop] = tracks
if (prop !== tracks && value !== "") {
return records[id][prop] == value;
} else if (prop === tracks && records[id].hasOwnProperty(tracks) === false) {
return records[id][prop] = [value];
} else if (prop === tracks && value !== "") {
return records[id][prop].push(value);
} else if (value === "") {
delete records[id][prop];
}
return records;
}
updateRecords(recordCollection, 5439, 'artist', 'ABBA');
Your browser information:
User Agent is: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.0 Safari/605.1.15
Challenge: Basic JavaScript - Record Collection
Link to the challenge: