顺晟科技
2021-06-16 10:57:36
259
使用方法,格式(json)这样为格式化代码。
格式(json,true)为开启压缩模式。
样例1:
射流研究…代码收藏代码
函数格式(txt,压缩/*是否为压缩模式*/){/* 格式化数据源码(对象转换为数据文本) */
var indentChar=
if(/^\s*$/.test(txt)){
" alert("数据为空,无法格式化!');
返回;
}
请尝试{ var data=eval('(' txt ')');}
catch(e){
" alert("数据源语法错误,格式化失败!错误信息: ' e.description,' err ');
返回;
};
var draw=[],last=false,This=this,line=compress?'\n ',nodeCount=0,MaxDepth=0;
var notify=function(name,value,isLast,indent/*缩进*/,formObj){
节点数/*节点计数*/
for (var i=0,tab=iindin)tab=缩进字符;/* 缩进HTML */
tab=压缩?tab/*压缩模式忽略缩进*/
maxDepth=缩进;/*缩进递增并记录*/
if(value value。构造函数==Array){/*处理数组*/
画画。push(tab)(formObj?(' ' ' name ' ' : '): ' ')'[' line);/*缩进'[' 然后换行*/
for(var I=0;ivalue.lengthI)
notify(i,value[i],i==value.length-1,indent,false);
draw.push(tab ']' (isLast?line:(',' line));/*缩进']'换行,若非尾元素则添加逗号*/
} else if(value type of value==' object '){/*处理对象*/
画画。push(tab)(formObj?(' ' ' name '':'):'') '{ '行);/*缩进'{' 然后换行*/
var len=0,I=0;
for(var key in value)len;
for(var key in value)notify(key,value[key],i==len,indent,true);
draw.push(tab '}' (isLast?line:(',' line));/*缩进'}'换行,若非尾元素则添加逗号*/
}else{
if(值类型==' string ')value=' ' ' value ' ' ';
画画。push(tab)(formObj?(' ' ' name '':'): ' ')值(isLast?' : ',')行);
};
};
var isLast=true,indent=0;
notify(' ',data,isLast,indent,false);
返回抽奖。join(');
}
样例2:
射流研究…代码收藏代码
getformatjsonstrfromstring :函数(jsonStr){
var res=
for(var i=0,j=0,k=0,ii,eleijsonStr.lengthI)
{//k:缩进,j: ' '个数
ele=jsonstr。charat(I);
if(j%2==0ele=='} ')
{
k-;
for(ii=0;iikii)ele=' ele;
ele=' \ n ' ele
}
else if(j%2==0ele=='{ ')
{
ele=' \ n
k;
for(ii=0;iikii)ele=' ';
}
else if(j%2==0ele==',')
{
ele=' \ n
for(ii=0;iikii)ele=' ';
}
else if(ele==' \ ' ')j;
res=ele
}
返回决心
},
08
1972-02
02
2022-09
29
2021-08
16
2021-06
16
2021-06
16
2021-06