1.使用escape函数
escape是javascript的一个内置函数,可以将字符串中的非ascii字符转换成%xx形式。在处理html代码时,我们可以用escape将html代码转换成字符串格式。
示例代码:
var html = <div>这是一段html代码</div>;var str = escape(html);console.log(str); // %3cdiv%3e%e8%bf%99%e6%98%af%e4%b8%80%e6%ae%b5html%e4%bb%a3%e7%a0%81%3c%2fdiv%3e
注意:使用escape转换后的字符串需要用unescape函数转换回原来的html代码。
2.使用encodeuricomponent函数
encodeuricomponent是javascript的一个内置函数,可以将字符串中的特殊字符转换成%xx形式。在处理html代码时,我们可以用encodeuricomponent将html代码转换成字符串格式。
示例代码:
var html = <div>这是一段html代码</div>;var str = encodeuricomponent(html);console.log(str); // %3cdiv%3e%e8%bf%99%e6%98%af%e4%b8%80%e6%ae%b5html%e4%bb%a3%e7%a0%81%3c%2fdiv%3e
注意:使用encodeuricomponent转换后的字符串需要用decodeuricomponent函数转换回原来的html代码。
3.使用innerhtml属性
html中元素的innerhtml属性可以获取或设置元素的html内容。我们可以通过innerhtml属性获取html代码,然后用json.stringify()函数将其转换成字符串格式。
示例代码:
var html = <div>这是一段html代码</div>;var div = document.createelement(div);div.innerhtml = html;var str = json.stringify(div.innerhtml);console.log(str); // \<div>这是一段html代码</div>\
注意:转换后的字符串会带有引号,我们需要使用eval()函数将其转换回原来的html代码。
总结
以上就是把html代码转换成字符串格式的三种方式。每种方式都有其优缺点,我们可以根据具体情况选择合适的方法。在使用时,也需要注意转换后的字符串需要逆向转换回原来的html代码。
以上就是怎么把html转换成字符串的详细内容。
