Basic JavaScript - Record Collection

Tell us what’s happening:
i know the answer is a if else statement but i fr dont understand at all how or whats going on. what can i do to better understand. Feeling the imposter syndrome creep up.

  **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) {
  return records;

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

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/103.0.5060.114 Safari/537.36 Edg/103.0.1264.49

Challenge: Basic JavaScript - Record Collection

Link to the challenge:

First of all, you need to fix this. You are trying to declare a function within a function. Only do this once.

Also, it would help if you indent your code so you can see the nesting of everything. It makes debugging much easier. I have indented your code for you.

1 Like

Getting the answer isn’t the point - practicing working through the problem is the point. I wouldn’t go looking for answers to copy-paste since that doesn’t help you learn how to work through solving the problem.

Note, it appears you have the identical solution as the first solution in the Guide. Did you copy/paste it? If so, you are cheating yourself of learning how to solve these kinds of problems.