If there is a space between the quotes, is it still an empty string?

Tell us what’s happening:

If I put space between the quotes like this , value === ’ ’ , it throws error. Does putting space in quotes make it non empty string? Or is it something else that is causing the error?
else if(value === ‘’){
delete object[id][prop];
}

Your code so far


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

updateRecords(collection, 2548, 'artist', '');
console.log(collection[2548]);

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36.

Challenge: Record Collection

Link to the challenge:

"" === " " // false

so a string with no characters within the quotes, and a string with just a space within the quotes are not the same thing

I thought so.
Thanks for the confirmation. :slight_smile:

The hard part of programming isn’t that computers are smart. It’s that they are very, very stupid. They cannot intuit what makes sense in a given context.

3 Likes