JS実装2 D配列をjson形式文字列に変換する操作例

3193 ワード

この例では、2 D配列をjson形式の文字列に変換するJS実装について説明します.皆さんの参考にしてください.具体的には以下の通りです.




  
  json
  
  
  $(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(/(
)/g, "\
").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 && !/^
?function\s*toString\s*\{
?\s*\[native code\]
?\s*\}
?\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(); }

オンラインHTML/CSS/JavaScriptコード実行ツールを使用するには、次の手順に従います.http://tools.jb51.net/code/HtmlJsRunテスト実行結果は次のとおりです.
12121212 [[10,100,1000],[1000,100,10]] [[10,100,1000],[1000,100,10]]
PS:json操作について、ここではいくつかの実用的なjsonオンラインツールをお勧めします.
オンラインJSONコード検査、検査、美化、フォーマットツール:http://tools.jb51.net/code/json
JSONオンラインフォーマットツール:http://tools.jb51.net/code/jsonformat
オンラインXML/JSON相互変換ツール:http://tools.jb51.net/code/xmljson
jsonコードオンラインフォーマット/美化/圧縮/編集/変換ツール:http://tools.jb51.net/code/jsoncodeformat
オンラインjson圧縮/エスケープツール:http://tools.jb51.net/code/json_yasuo_trans
JavaScriptに関する詳細については、「JavaScriptにおけるjson操作テクニックのまとめ」、「JavaScriptアルゴリズムテクニックのまとめ」、「JavaScriptエラーとデバッグテクニックのまとめ」、「JavaScriptデータ構造とアルゴリズムテクニックのまとめ」、「JavaScript遍歴アルゴリズムとテクニックのまとめ」、「JavaScript数学演算の使い方のまとめ」を参照してください.
JavaScriptプログラムの設計に役立つことを願っています.