Basic JavaScript - Record Collection

Tell us what’s happening:
Hi, would you please tell me what the difference is between this code: records[id].tracks = arr;
and this code:
records[id][tracks] = arr;
it doesn’t work with this: records[id][tracks] = arr;

  **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) {


if(prop !== 'tracks' && value !== '')  {
  records[id][prop] = value;
} else if (prop === 'tracks' && records[id].hasOwnProperty('tracks') === false) {
   let arr = [];
   arr.push(value);
   records[id].tracks = arr;
} else if (prop == 'tracks' && value !== ''){
  records[id].tracks.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 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36

Challenge: Basic JavaScript - Record Collection

Link to the challenge:

I would double check how bracket notation works. You either use a string or a variable holding a string with bracket notation.

:man_facepalming: I forgot quotes, thanx

1 Like