freecodecamp提示中给出转义字符替换的方法,感觉这种处理方法具备了某种美感

  • 对字符串处理,可以转化成数组;
  • 转化成数组之后用Array.prototype.map(function(item){})对数组中的每个元素进行处理;
  • 处理完毕之后直接在数组上call the .join('') method,重归字符串;
  • 还有一个好处,就是可以不断维护这个replacement的映射关系,通过添加和更新控制对字符串转义字符的替换行为;
//转义字符替换方法
function convertHTML(str) {
    // :)
    var replacement = {
      '&':'&',
      '<':'<',
      '>':'>',
      "\'":"'",
      '\"':'"'
    };

    str = str.split('').map(function(entity){
      return replacement[entity]||entity;
    }).join('');
    
    return str;
  }
  
  convertHTML("Dolce & Gabbana");