成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

js格式化xml并高亮顯示關(guān)鍵字

Dogee / 2169人閱讀

摘要:構(gòu)造函數(shù)對象解析文本并返回一個對象。要使用,使用不帶參數(shù)的構(gòu)造函數(shù)來實例化它,然后調(diào)用其方法不支持對象??赡苁腔蛑械囊粋€。實戰(zhàn)格式化高亮顯示節(jié)點層級。方便前面添加多少個空格縮進將標簽轉(zhuǎn)化成實體樣式格式格式化效果

w3school XML DOM - DOMParser 對象
DOMParser 解析 XML 標記來創(chuàng)建一個文檔。

構(gòu)造函數(shù)

new DOMParser()

DOMParser 對象解析 XML 文本并返回一個 XML Document 對象。要使用 DOMParser,使用不帶參數(shù)的構(gòu)造函數(shù)來實例化它,然后調(diào)用其 parseFromString() 方法:

var doc = (new DOMParser()).parseFromString(text)

IE 不支持 DOMParser 對象。相反,它支持使用 Document.loadXML() 的 XML 解析。

DOMParser.parseFromString()

解析 XML 標記

語法

parseFromString(text, contentType)

text 參數(shù)是要解析的 XML 標記。

contentType 是文本的內(nèi)容類型??赡苁?"text/xml" 、"application/xml" 或 "application/xhtml+xml" 中的一個。注意,不支持 "text/html"。

實戰(zhàn)

js

   // 格式化xml 高亮顯示
  formatXml = function (content) {
    let xml_doc = null;
    const formatContent = content.replace(/[

]/g, "");
    try {
      xml_doc = (new DOMParser()).parseFromString(formatContent, "text/xml");
    } catch (e) {
      return false;
    }

    function build_xml(list, element, level) {
      let t = [];

      /*level 節(jié)點層級。方便前面添加多少個空格縮進*/
      for (let i = 0; i < level; i++) {
        t.push("  ");
      }

      t = t.join("");

      list.push(t + "<" + element.nodeName + ">
");
      for (let i = 0; i < element.childNodes.length; i++) {
        const childLevel = level + 1;
        let childItem = element.childNodes[i];
        let nodeName = childItem.nodeName;
        if (nodeName === "#text") {
          continue;
        }

        if (childItem.childNodes.length <= 1) {
          let value = "";
          if (childItem.childNodes.length === 1) {
            value = childItem.childNodes[0].nodeValue;
          }
          
          // 將html標簽轉(zhuǎn)化成實體
          value = value ? value.replace(/&/g, "&").replace(//g, ">") : "";

          let value_color = !isNaN(Number(value)) ? "code-number" : "code-string";

          let value_txt = "" + value + "";
          let item = t + "  <" + nodeName +
            ">" + value_txt + "" + nodeName + ">
";
          list.push(item);
        } else {
          build_xml(list, element.childNodes[i], childLevel);
        }
      }
      list.push(t + "" + element.nodeName + ">
");
    }

    let list = [];
    build_xml(list, xml_doc.documentElement, 0);
    return list.join("");
  };

CSS樣式

  .code-string{color:green;}
  .code-number{color:darkorange;}
  .code-boolean{color:#000033;}
  .code-null{color:magenta;}
  .code-key{color:#003377;font-weight:bold;}

eg.

xml 格式

"?0.0.1article2018-12-25 15:05:001?    ?      ?      63?      -66480150.1020580000000000000?    11109319?    ?      ?      63?      -66480150.1020580000000000000?    11187043?  "

格式化效果

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/100397.html

相關(guān)文章

  • js式化xml高亮顯示關(guān)鍵字

    摘要:構(gòu)造函數(shù)對象解析文本并返回一個對象。要使用,使用不帶參數(shù)的構(gòu)造函數(shù)來實例化它,然后調(diào)用其方法不支持對象??赡苁腔蛑械囊粋€。實戰(zhàn)格式化高亮顯示節(jié)點層級。方便前面添加多少個空格縮進將標簽轉(zhuǎn)化成實體樣式格式格式化效果 w3school XML DOM - DOMParser 對象 DOMParser 解析 XML 標記來創(chuàng)建一個文檔。 構(gòu)造函數(shù) new DOMParser() DOMPar...

    BWrong 評論0 收藏0
  • 提高 JavaScript 開發(fā)效率的高級 VSCode 擴展!

    摘要:使用高亮類似的擴展更強大的高亮擴展,具有更多功能。為了檢查和檢查響應(yīng),使用了之類的工具。在這里獲取這兩個擴展自動閉合標記和自動重命名標記。類似的擴展顯示提交歷史的精美圖表等等。 想閱讀更多優(yōu)質(zhì)文章請猛戳GitHub博客,一年百來篇優(yōu)質(zhì)文章等著你! Quokka.js Quokka.js 是一個用于 JavaScript 和 TypeScript 的實時運行代碼平臺。這意味著它會實時運行...

    zhigoo 評論0 收藏0
  • #私藏項目實操分享# 使用 JavaScript 上傳 PDF 和 Excel 等二進制文件到 AB

    摘要:這是年的第篇文章,也是汪子熙公眾號總共第篇原創(chuàng)文章。使用通過格式發(fā)送和文件到服務(wù)器關(guān)于格式的詳細說明,參考開發(fā)社區(qū)和的文檔我在前文例子的基礎(chǔ)上稍作修改在里使用兩個類型為的標簽,分別上傳和文件用來測試的本地文件,大小為字節(jié)。 這是 Jerry 2021 年的第 71 篇文章,也是汪子熙公眾號總共第 348 篇原創(chuàng)文章。 Jerry 之前發(fā)布過一篇文章 不使用任何框架,手寫純 Jav...

    peixn 評論0 收藏0
  • 一個前端程序猿的Sublime Text3的自我修養(yǎng)

    摘要:效果如下配置方法參考下的配置方法完美支持提供了比默認更好的語法高亮,而且他完美支持。語法高亮默認安裝的對的支持讓人抓狂,幀動畫別開玩笑了你只會看到一片白色的純文本一樣的代碼。事實上不光,我建議用完全替代原來的來完成語法高亮。 文章轉(zhuǎn)載自本人的博客《三省吾身丶丶》點擊查看喜歡的話請瘋狂的推薦吧! ^_^ 本文章會在本人有插件或者設(shè)置更新時,進行不定時更新 偷懶了,圖片地址直接設(shè)置的博客...

    KunMinX 評論0 收藏0

發(fā)表評論

0條評論

Dogee

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<