js 原生转json 可以v8中运行

时间:2023-03-08 22:42:22
//           load("D:/jsontest.js");
function test1(vvv)
{ print(vvv);
} //把json str 转 json obj
function strToObj(json){
return eval("("+json+")");
} //把json obj 转 str
function obj2str(obj){
var arr = []; if( obj == null) {
return "\"\"";
} if(typeof obj == "string") {
return "\""+obj+"\"";
} if(typeof obj == "object"){
if(!obj.sort){
arr[]="{"
for(var i in obj){
arr[arr.length]="\""+i+"\"";
arr[arr.length]=":";
arr[arr.length]=obj2str(obj[i]);
arr[arr.length]=",";
}
arr[arr.length-]="}"
}else{
arr[]="["
for(var i =;i<obj.length;i++){
arr[arr.length]=obj2str(obj[i]);
arr[arr.length]=",";
}
arr[arr.length-]="]"
}
return arr.join("");
}//if(typeof obj == "object") return obj.toString();
} try{ var jsonstr="{\"aa\": \"111\"}";
var obj =strToObj(jsonstr);
print ("strToObj 1",obj.aa);
print ("strToObj 2",obj); obj.columnwidth=[, , , , , , , , ];
obj.title="xxtilfsdf";
var jsonb={};
jsonb.value=;
jsonb.xxx="";
jsonb.aaa="fdsfas"; obj.levelcolor=jsonb;
var strxxx=obj2str(obj);
print ("obj2str",strxxx); var jsonobjobj=strToObj(strxxx); print (jsonobjobj.title);
print (jsonobjobj.levelcolor); var option=
{
titles: ["cc", "jj", "", "fa", "ff", "bb", "aadfs", "ssss", ""],
columnwidth: ["", , , , , , , , ],
counts: ,
freshtime: ,
levelcolor: ["#045ACF","#e0e041","#FF9900","#FF0000"]
};
//setoption(option); var aaa=; print(option.levelcolor);
option.titles.push("aaaaaaaaaa");
option.ccc=; var strxxxoption=obj2str(option);
print ("strxxxoption,",strxxxoption); }catch(error)
{
print("error,");
print(error);
}