当前位置 : 主页 > 网络编程 > JavaScript >

js+for循环实现字符串自动转义的代码(把后面的字符替换前面的字符)

来源:互联网 收集:自由互联 发布时间:2022-04-19
核心代码 scriptString.prototype.html = function(encode) { var replace =["#39;", "'", "quot;", '"', "nbsp;", " ", "gt;", "", "lt;", "", "yen;", "", "amp;", ""]; var replaceReverse = ["", "amp;", "", "yen;", "", "lt;", "", "gt;", " ", "nb

核心代码

<script>
String.prototype.html = function(encode) {
    var replace =["&#39;", "'", "&quot;", '"', "&nbsp;", " ", "&gt;", ">", "&lt;", "<", "&yen;", "¥", "&amp;", "&"];    
    var replaceReverse = ["&", "&amp;", "¥", "&yen;", "<", "&lt;", ">", "&gt;", " ", "&nbsp;", '"', "&quot;", "'", "&#39;"];
	  var target;
	  if (encode) {
	  	target = replaceReverse;
	  } else {
	  	target = replace;
	  }
    for (var i=0,str=this;i< target.length;i+= 2) {
       str=str.replace(new RegExp(target[i],'g'),target[i+1]);
    }
    return str;
  };

console.log("<div>自由互联</div>".html(true));
</script>

效果图

其中for循环大家可以看下用法

for (var i=0,str=this;i< target.length;i+= 2) {
str=str.replace(new RegExp(target[i],'g'),target[i+1]);
}

这个用法确实不错,有get了一个新技能。

网友评论