Convert HTML Entities...6

Convert HTML Entities...6
0

#1

why is replace not working?

Your code so far


function convertHTML(str) {
  // :)
  var ob = {
    "&":'&',
    "'":''',
    '"':'"',
    "<":'&lt;',
    ">":"&gt;"
  }
  let hna = str.split('')
  if(str.match(/[&'"<>]/)){
    return hna.map(function(x, b){
      if(x.match(/[&<>'"]/)){
        return hna.replace(x,ob[x])
      }
      
    }).join('')
  }
  else{
    return str;
  }
}


convertHTML("Dolce & Gabbana");

Your browser information:

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

Link to the challenge:
https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/intermediate-algorithm-scripting/convert-html-entities


#2

hna is an array of string characters. The replace method is for strings, so you can not call replace on hna. What variable in the map callback function represents the character? Also, make sure the map callback function always returns a value and not just if the if statement evaluates to true.