作为一个全栈(搞)工程师,就是啥都不精,但是啥都要做。前端后端都要做,所以经常是自己写接口,自己对接口。在很多时候,接口中会返回大量的json数据,并且这些json数据是按照一定的格式进行返回的,比如按照几个字段进行排序。而当数据量很大的时候,很难一眼看出返回的数据是否按照我们既定的格式。要么就硬着头皮仔细对比,要么就将数据转换到前端表格展示后才能一目了然的看出来。
基于这个痛点,参考网上资料,编写了一个在线json数组转table的工具,先来看看效果。
工具地址:http://tools.zjh336.cn/json2Table.html
代码:
<html><head>
<meta charset="utf-8">
<title>在线JSON转表格</title>
</head>
<body>
<div style="margin-bottom:10px;text-align:center">
<input id="convertJson" type="button" value="json转表格">
<input id="reset" type="button" value="重置">
</div>
<textarea style="width:100%;height:100px" id="jsonText"></textarea>
<div id="tableDiv">
</div>
<script>
var convertJson=document.getElementById("convertJson");
var reset=document.getElementById("reset");
convertJson.onclick = function(){
convertTable();
}
reset.onclick = function(){
resetTable();
}
function convertTable(){
var jsonString = document.getElementById("jsonText").value;
var jsonData = new Function("return "+ jsonString)();
var i;
var jsonLength = !jsonData?0:jsonData.length;
var temp;
var tbl;
var tr;
var td;
var body;
var tableDiv = document.getElementById("tableDiv");
if(tableDiv.childElementCount>0){
return;
}
tbl = document.createElement("table");
tbl.border="1px";
tbl.borderColor="red";
for(i=0;i<jsonLength;i++){
tr = document.createElement("tr");
for(temp in jsonData[i]){
td = document.createElement("td");
td.appendChild(document.createTextNode(jsonData[i][temp]));
tr.appendChild(td);
}
if(i==jsonLength-1){
tr.margin="0 0 5 0";
}
tbl.appendChild(tr);
}
tableDiv.appendChild(tbl);
}
function resetTable(){
var tableDiv=document.getElementById("tableDiv");
tableDiv.innerHTML="";
}
</script>
</body></html>



还没有评论,来说两句吧...