Convert a multidimensional javascript array to JSON?

后端 未结 9 1166
半阙折子戏
半阙折子戏 2020-12-05 09:54

What is the best way of converting a multi-dimensional javascript array to JSON?

相关标签:
9条回答
  • 2020-12-05 10:20

    use this code and very simple develop for more two array

    function getJSON(arrayID,arrayText) {    
        var JSON = "[";
        //should arrayID length equal arrayText lenght and both against null
        if (arrayID != null && arrayText != null && arrayID.length == arrayText.length) {
            for (var i = 0; i < arrayID.length; i++) {
                JSON += "{";
                JSON += "text:'" + arrayText[i] + "',";
                JSON += "id:'" + arrayID[i] + "'";
                JSON += "},";
            }
        }
        JSON += "]"
        JSON = Function("return " + JSON + " ;");
        return JSON();
    }
    

    and 3 array

    function getJSON(arrayID, arrayText, arrayNumber) {
        var JSON = "[";  
        if (arrayID != null && arrayText != null && arrayNumber!=null && Math.min(arrayNumber.length,arrayID.length)==arrayText.length) {
            for (var i = 0; i < arrayID.length; i++) {
                JSON += "{";
                JSON += "text:'" + arrayText[i] + "',";
                JSON += "id:'" + arrayID[i] + "',";
                JSON += "number:'" + arrayNumber[i] + "'";
                JSON += "},";
            }
        }
        JSON += "]"
        JSON = Function("return " + JSON + " ;");
        return JSON();
    }
    
    0 讨论(0)
  • 2020-12-05 10:21

    This will convert all combinations of arrays within objects and vice versa including function names:

    function isArray(a){var g=a.constructor.toString();
       if(g.match(/function Array()/)){return true;}else{return false;}
    }
    function objtostring(o){var a,k,f,freg=[],txt; if(typeof o!='object'){return false;}
       if(isArray(o)){a={'t1':'[','t2':']','isarray':true}
       }else         {a={'t1':'{','t2':'}','isarray':false}}; txt=a.t1;
       for(k in o){
               if(!a.isarray)txt+="'"+k+"':";
               if(typeof o[k]=='string'){txt+="'"+o[k]+"',";
               }else if(typeof o[k]=='number'||typeof o[k]=='boolean'){txt+=o[k]+",";
               }else if(typeof o[k]=='function'){f=o[k].toString();freg=f.match(/^function\s+(\w+)\s*\(/);
                   if(freg){txt+=freg[1]+",";}else{txt+=f+",";};
               }else if(typeof o[k]=='object'){txt+=objtostring(o[k])+",";
               }
       }return txt.substr(0,txt.length-1)+a.t2;
    }
    
    0 讨论(0)
  • 2020-12-05 10:23
    var t = {}
    
    for(var i=0;i<3;i++) {
        var _main = {};
        var _dis = {}
        var _check = {};
    
        _main["title"] = 'test';
        _main["category"] = 'testing';
        _dis[0] = '';
        _dis[1] = '';
        _dis[2] = '';
        _dis[3] = '';
        _check[0] = 'checked';
        _check[1] = 'checked';
        _check[2] = 'checked';
        _check[3] = 'checked';
        _main['values'] = _check;
        _main['disabled'] = _dis;
        t[i] = _main;
    }
    
    alert(JSON.stringify(t));
    

    Try this

    0 讨论(0)
提交回复
热议问题