本文實例講述了JS實現將二維數組轉為json格式字符串操作。分享給大家供大家參考,具體如下:
<!doctype html><html lang="en"><head>  <meta charset="utf-8">  <title>json</title>  <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>  <script>  $(function(){    /*******遍歷二維數組*********/    //定義數組    var arr=new Array();    arr =[[1,2],[1,2],[1,2],[1,2]]; //初始化二維數組    var i,j;    for(i=0;i<arr.length;i++){      var arr_l=new Array();//獲取二維數組中的一維數組      arr_1=arr[i];      //遍歷一維數組      for(j=0;j<arr_1.length;j++){        //alert(arr_1[j]); // arr_1:表示一位數組中的值        document.write(arr_1[j]);      }    }    document.write("<br>");    var array = [[10, 100, 1000], [1000, 100, 10]];    // encodeArray2D方法    var jsonStr = encodeArray2D(array);    //alert(jsonstr);    document.write(jsonStr);    document.write("<br>");    // arrayToJson方法    var jsonStr2 = arrayToJson(array);    document.write(jsonStr2);  });  /**  * 將二維數組轉為 json 字符串  */  function encodeArray2D(obj) {    var array = [];    for (var i = 0; i < obj.length; i++) {      array[i] = '[' + obj[i].join(',') + ']';    }    return '[' + array.join(',') + ']';  }  /**  * 將二維數組轉為 json 字符串  */  function arrayToJson(o) {    var r = [];    if (typeof o == "string") return "/"" + o.replace(/([/'/"//])/g, "//$1").replace(/(/n)/g, "//n").replace(/(/r)/g, "//r").replace(/(/t)/g, "//t") + "/"";    if (typeof o == "object") {      if (!o.sort) {        for (var i in o)        r.push(i + ":" + arrayToJson(o[i]));        if (!!document.all && !/^/n?function/s*toString/s*/{/n?/s*/[native code/]/n?/s*/}/n?/s*$/.test(o.toString)) {        r.push("toString:" + o.toString.toString());        }        r = "{" + r.join() + "}";      } else {        for (var i = 0; i < o.length; i++) {        r.push(arrayToJson(o[i]));        }        r = "[" + r.join() + "]";      }      return r;    }    return o.toString();  }</script></head><body></body></html>測試運行結果如下:
12121212
[[10,100,1000],[1000,100,10]]
[[10,100,1000],[1000,100,10]]
希望本文所述對大家JavaScript程序設計有所幫助。
新聞熱點
疑難解答