Basic JavaScript - Record Collection

Tell us what’s happening: why is my code not working?
Describe your issue in detail here.

Your code so far
function updateRecords(records, id, prop, value) {
if (prop !== ‘tracks’ && value !== “”){
records[id][prop] = value;
} else if (prop === “tracks” && records.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;
}

// 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.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;
}

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/106.0.0.0 Safari/537.36 OPR/92.0.0.0

Challenge: Basic JavaScript - Record Collection

Link to the challenge:

when something isn’t working we should look for errors being reported. (or tests failing).
Do you have any of these?

yes its saying " * After updateRecords(recordCollection, 2468, "tracks", "Free"), tracks should have the string 1999 as the first element.

  • Failed:After updateRecords(recordCollection, 2548, "tracks", ""), tracks should not be set"

There is an issue on this line.

else if (prop === “tracks” && records[id].hasOwnProperty(“tracks”) === false)

1 Like

thanks for your assistance sir

Good work figuring it out! You were really close with what you had.

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