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

核心代码

<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了一个新技能。