隨著互聯網的快速發展,更多的應用程序需要通過接口來獲取數據,而json作為一種輕量級的數據交換格式,越來越受到人們的關注。
而document對象作為網頁文檔樹的載體,也經常需要轉換為json格式。這里介紹一種簡單的方式來實現document轉json的方法。
function convertToJson(root) { let obj = {}; let nodes = root.childNodes; nodes.forEach(function (node) { if (node.nodeType === Node.ELEMENT_NODE) { if (node.childNodes.length === 1 && node.childNodes[0].nodeType === Node.TEXT_NODE) { obj[node.nodeName] = node.childNodes[0].nodeValue; } else { if (!obj[node.nodeName]) { obj[node.nodeName] = []; } obj[node.nodeName].push(convertToJson(node)); } } }); return obj; }
這段代碼通過遞歸方式遍歷整個文檔樹,將每個元素節點轉換為json對象。如果當前節點只有一個文本節點子節點,則將當前節點和文本節點的值一起轉換為json對象中相應的屬性和值。
如果當前節點有多個子節點或者子節點是元素節點,則將當前節點和子節點一起轉換為數組,并遞歸轉換每個節點的屬性和子節點。
使用這個函數可以將一個文檔樹轉換為一個json對象,方便接口調用和數據交換。當然,也可以根據實際需求進行修改和擴展。
上一篇c 打開json文件讀取
下一篇html 頁面引入vue