jsonオブジェクトと配列、jsオブジェクトに変換する方法

3039 ワード

JSON文法規則
JSON文法はJavaScriptの対象がフランス語法のサブセットを表しています.
  • データは、名称/値ペアにおいて
  • である.
  • データはカンマ区切り
  • です.
  • かっこ保存オブジェクト
  • 四角括弧保存配列
  • JSONオブジェクト
    JSONの対象は括弧に書いています.
    オブジェクトには複数の名前と値のペアが含まれます.
    { "firstName":"John" , "lastName":"Doe" }
    この点も分かりやすいです.このJavaScript文と同じです.
    firstName = "John"
    lastName = "Doe"
    JSON配列
    JSON配列は四角い括弧に書いています.
    配列は複数のオブジェクトを含むことができます.
    {
    "employees": [
    { "firstName":"John" , "lastName":"Doe" },
    { "firstName":"Anna" , "lastName":"Smith" },
    { "firstName":"Peter" , "lastName":"Jones" }
    ]
    }
    上記の例では、オブジェクト「employes」は3つのオブジェクトを含む配列です.各対象はある人(名字と名前があります)に関する記録を表します.
    JSONファイル
  • JSONファイルのファイルタイプは「.json」
  • です.
  • JSONテキストのMIMEタイプは「appication/json」
  • です.
    JSONテキストはJavaScriptオブジェクトに変換されます.
    JavaScript関数eval()は、JSONテキストをJavaScriptオブジェクトに変換するために使用できます.
    eval()関数はJavaScriptコンパイラを使用し、JSONテキストを解析し、JavaScriptオブジェクトを生成することができます.テキストを括弧に囲まなければなりません.これで文法エラーを避けることができます.
    var obj = eval ("(" + jsontxt + ")");
    例:
        $.ajax({
            type: 'POST',
            url: '../../caseHandler.ashx?action=GetCase&id=' + id.toString(), //url  action      
            data: "",
            dataType: "text", //   text,   text,         ;    json   ,     json
            ContentType: "application/json; charset=utf-8",
            success: function (returnedData) {
                getMarkerFeature(eval("(" + returnedData+ ")"));
            },
            error: function (msg) {
                alert("    :"+ msg);
            }
        });
    JavaScriptによるオブジェクト配列の作成
    var employees = [
    { "firstName":"Bill" , "lastName":"Gates" },
    { "firstName":"George" , "lastName":"Bush" },
    { "firstName":"Thomas" , "lastName": "Carter" }
    ];
    JavaScriptオブジェクト属性アクセスの2つの方法
    object.atribute
    object["atribute"]
    たとえば:
    var employees = [
    { "firstName":"Bill" , "lastName":"Gates" },
    { "firstName":"George" , "lastName":"Bush" },
    { "firstName":"Thomas" , "lastName": "Carter" }
    ];
    alert(employees[0].lastName);
    alert(employees[0]["lastName"]);
    var employees = [
    { "firstName":"Bill" , "lastName":"Gates" },
    { "firstName":"George" , "lastName":"Bush" },
    { "firstName":"Thomas" , "lastName": "Carter" }
    ];
    alert(employees[0].lastName); //    
    alert(employees[0]["lastName"]); //    
    部分参考抜粋自:JSON文法http://www.w3school.com.cn/json/json_sysntax.asp
    json配列オブジェクトとオブジェクト配列http://www.cnblogs.com/zhangji/archive/2011/09/02/2163811.html