FreeCodeCamp筆記之:Convert HTML Ent
2017-10-12 本文已影响25人
delphuy
题目
将字符串中的字符&、<、>、"(双引号), 以及'(单引号)转换为它们对应的 HTML 实体。如果你被卡住了,记得开大招 Read-Search-Ask。尝试与他人结伴编程、编写你自己的代码。这是一些对你有帮助的资源:
RegExp
HTML Entities
function convert(str) {
// :)
return str;}
convert("Dolce & Gabbana");
思路
- 意思是将str 里包含 & < > " ' 这 5个符号 的地方替换为html写法;
-
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,'"').replace(/'/g,"'");
return str;
}
convert("Dolce & Gabbana");
- 这个简洁多了!