FreeCodeCamp筆記之:Convert HTML Entities

题目

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

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

思路

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

解答

function convert(str) {
  // &colon;&rpar;
  var arr = str.split('');
  for (var i=0;i<= arr.length;i++){
      switch (arr[i]) {
      case '&':
        arr[i]="&amp;";
          break;
      case '<':
        arr[i]="&lt;";
        break;
      case '>':
        arr[i]="&gt;";
        break;
      case '"':
        arr[i]="&quot;";
        break;
      case "'":
        arr[i]="&apos;";
        break;
      }      
  }
  return arr.join('');
}
convert("Dolce & Gabbana");
  • 感觉脚本好长,突然想起 替换应该有个函数是 replace(),不过忘了怎么用,先学习一下;
function convert(str) {
  // &colon;&rpar;
str = str.replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;').replace(/"/g,'&quot;').replace(/'/g,"&apos;");
return str;
}
convert("Dolce & Gabbana");
  • 这个简洁多了!
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容