FreeCodeCamp筆記之:Convert HTML Entities

题目

将字符串中的字符&、<、>、"(双引号), 以及'(单引号)转换为它们对应的 HTML 实体。如果你被卡住了,记得开大招 Read-Search-Ask。尝试与他人结伴编程、编写你自己的代码。这是一些对你有帮助的资源:
RegExp
HTML Entities

function convert(str) {
  // :)
  return str;}
convert("Dolce & Gabbana");

思路

  1. 意思是将str 里包含 & < > " ' 这 5个符号 的地方替换为html写法;
  2. HTML Entities 是个字典,里面有 符号的 html实体对照表;
    3.第一反应是用替换,用if 之类的判断;

解答

function convert(str) {
  // :)
  var arr = str.split('');
  for (var i=0;i<= arr.length;i++){
      switch (arr[i]) {
      case '&':
        arr[i]="&";
          break;
      case '<':
        arr[i]="<";
        break;
      case '>':
        arr[i]=">";
        break;
      case '"':
        arr[i]=""";
        break;
      case "'":
        arr[i]="'";
        break;
      }      
  }
  return arr.join('');
}
convert("Dolce & Gabbana");
  • 感觉脚本好长,突然想起 替换应该有个函数是 replace(),不过忘了怎么用,先学习一下;
function convert(str) {
  // :)
str = str.replace(/&/g,'&').replace(//g,'>').replace(/"/g,'"').replace(/'/g,"'");
return str;
}
convert("Dolce & Gabbana");
  • 这个简洁多了!

你可能感兴趣的:(FreeCodeCamp筆記之:Convert HTML Entities)