MW211 EXIT

devlog
JavaScript/配列とJSON文字列
2014年04月15日
以下のような多次元連想配列(ハッシュオブジェクト)があった場合、
JSON文字列に変換すると…。
┌──────────────────────────────────────┐
│var 配列 = new Array();                                                     │
│配列.push({                                                                 │
│    "列1"   :'値1-1',                                                       │
│    "列2"   :'値1-2'                                                        │
│});                                                                         │
│配列.push({                                                                 │
│    "列1"   :'値2-1',                                                       │
│    "列2"   :'値2-2'                                                        │
│});                                                                         │
│var ハッシュオブジェクト = {                                                │
│    "header"    :'ヘッダ',                                                  │
│    "data"      :配列                                                       │
│};                                                                          │
├──────────────────────────────────────┤
│var JSON文字列 = JSON.stringify(ハッシュオブジェクト);                      │
└──────────────────────────────────────┘

JSON文字列の結果は以下のような文字列になる(実際には改行・余白はない)。
┌──────────────────────────────────────┐
│{"header":"ヘッダ",                                                         │
│       "data":[{"列1":"値1-1","列2":"値1-2"},{"列1":"値2-1","列2":"値2-2"}]}│ 
├──────────────────────────────────────┤
│{                                                                           │
│    "header"    :"ヘッダ",                                                  │
│    "data"      :[                                                          │
│        {                                                                   │
│            "列1"   :"値1-1",                                               │
│            "列2"   :"値1-2"                                                │
│        },                                                                  │
│        {                                                                   │
│            "列1"   :"値2-1",                                               │
│            "列2"   :"値2-2"                                                │
│        }                                                                   │
│    ]                                                                       │
│}                                                                           │
└──────────────────────────────────────┘

ちなみにこのJSON文字列をPHP(json_decode())で配列に変換すると、
以下のようなデータとなる。
┌──────────────────────────────────────┐
│var_export(json_decode($JSON文字列, TRUE));                                 │
├──────────────────────────────────────┤
│array (                                                                     │
│  'header' => 'ヘッダ',                                                     │
│  'data' =>                                                                 │
│  array (                                                                   │
│    0 =>                                                                    │
│    array (                                                                 │
│      '列1' => '値1-1',                                                     │
│      '列2' => '値1-2',                                                     │
│    ),                                                                      │
│    1 =>                                                                    │
│    array (                                                                 │
│      '列1' => '値2-1',                                                     │
│      '列2' => '値2-2',                                                     │
│    ),                                                                      │
│  ),                                                                        │
└──────────────────────────────────────┘
分類:JavaScript