您的位置:

JSHTML转义

一、HTML转JS

将HTML代码转义为JS字符串可以避免代码出现语法错误,同时也能够保护页面中的数据不被恶意代码破坏,下面是一个HTML转义为JS字符串的示例:


function html2Js(str) {
  return str.replace(/"/g, '"')
            .replace(/'/g, ''')
            .replace(//g, '>');
}

以上代码的作用是将HTML中的双引号、单引号、小于号和大于号分别转义为四个对应的JS语法字符。

二、JSHTML转XML

JSHTML是一种展示内容的方式,而XML则是一种描述文档的方式,将JSHTML转换为XML可以方便地在不同应用程序之间进行交互,下面是一个JSHTML转XML的示例:


function jsHtml2Xml(str) {
  var xml = '';
  var div = document.createElement('div');
  div.innerHTML = str;
  var nodes = div.childNodes;

  for (var i = 0; i < nodes.length; i++) {
    var node = nodes[i];
    if (node.nodeType === 1) {
      xml += '<' + node.tagName.toLowerCase() + '>';
      if (node.textContent) {
        xml += node.textContent;
      } else {
        xml += jsHtml2Xml(node.innerHTML);
      }
      xml += '';
    }
  }

  xml += '