我花了几个小时试图弄清楚这里发生了什么,看看堆栈溢出和其他地方,我无法弄清楚发生了什么。我真的很感激任何帮助!!
我需要让document.write('< /div>');
转到 - &gt; < /div>
我已将其简化为最简单的情况,并使用下面的html示例。
<script>
var str = "document.write('</div>');";
str = str.replace("/document.write/g","");
console.log(str); //</div>
</script>
&#13;
答案 0 :(得分:4)
排除引号并且有效。由于引号,它被解释为字符串文字,而正则表达式文字在普通/
之间表示。
此外,.
需要转义或与任何其他单个字符匹配。
<script>
var str = "document.write('</div>');";
str = str.replace(/document\.write/g,"");
console.log(str); //</div>
</script>
答案 1 :(得分:3)
String.prototype.replace()
接受字符串或正则表达式。如果你要使用字符串,那么应该是:
var str = "document.write('</div>');";
str = str.replace("document.write","");
console.log(str);
&#13;