I am unable to set tracks property and am not understanding what's going wrong. Can anyone please look at my code and rectify

Tell us what’s happening:
Describe your issue in detail here.

   **Your code so far**

// Setup
var 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) {
if(prop!=='tracks'&&value!=='') {
  records[id][prop]=value;
}
else if(prop==='tracks'&&records.id.hasOwnProperty('tracks')===false){
  records[id][prop]=[value];
}
else if(prop==='tracks'&&value!==''){
  records[id][prop].push(value);
}
else if(value===''){
  delete records[id][prop];
}
return records;
}


console.log(updateRecords(recordCollection, 5439, 'artist', 'ABBA'));










   **Your browser information:**

User Agent is: Mozilla/5.0 (Linux; Android 5.1.1; SM-T285YD) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.120 Mobile Safari/537.36

Challenge: Record Collection

Link to the challenge:

Compare how you are using the id parameter here records.id.hasOwnProperty and here records[id][prop].

One is right and one is wrong. Remember id is a variable.

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.