zoukankan      html  css  js  c++  java
  • js 原生转json 可以v8中运行

    //           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[0]="{"
        for(var i in obj){
         arr[arr.length]="""+i+""";
         arr[arr.length]=":";
         arr[arr.length]=obj2str(obj[i]);
         arr[arr.length]=",";
        }
        arr[arr.length-1]="}"
       }else{
        arr[0]="["
        for(var i =0;i<obj.length;i++){
         arr[arr.length]=obj2str(obj[i]);
         arr[arr.length]=",";
        }
        arr[arr.length-1]="]"
       }
       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=[10, 150, 400, 150, 80, 200, 200, 80, 80];
         obj.title="xxtilfsdf";
         var jsonb={};
         jsonb.value=1;
         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", "12", "fa", "ff", "bb", "aadfs", "ssss", "234234"],
        column ["100", 150, 400, 150, 80, 200, 200, 80, 80],
        counts: 50,
        freshtime: 10,
        levelcolor: ["#045ACF","#e0e041","#FF9900","#FF0000"]
    };
    //setoption(option);
     
     
        var aaa=1;
     
    print(option.levelcolor);
    option.titles.push("aaaaaaaaaa");
    option.ccc=2;
     
    var strxxxoption=obj2str(option);
        print ("strxxxoption,",strxxxoption);
         
     
    }catch(error)
    {
        print("error,");
        print(error);
    }
  • 相关阅读:
    innobackupex备份命令输出
    Percona XtraBackup原理详解
    MongoDB性能分析工具mongostat
    MongoDB查看当前连接数
    事务、拦截器
    HttpServletResponse和HttpServletRequest的简单实用
    Maven环境配置
    SQL Server 时间戳与时间格式互相转换
    虚拟机、云主机、VPS 三者之间的区别
    Elasticsearch 空值过滤
  • 原文地址:https://www.cnblogs.com/bleachli/p/9318792.html
Copyright © 2011-2022 走看看