ホームページ >ウェブフロントエンド >jsチュートリアル >jsのJsonの構文と形式を詳しく解説
JSON テキスト形式は、JavaScript オブジェクトを作成するコードと構文的に同じです。
この類似性により、JavaScript プログラムは組み込みの eval() 関数を使用して、パーサーを必要とせずに JSON データからネイティブ JavaScript オブジェクトを生成できます。
JSON 構文規則:
データは名前と値のペアで構成されます
データはカンマで区切られます
中括弧はオブジェクトを保存します
角括弧は配列を保存します
JSON 名と値のペアの概要
"name":"张飞", "age":23
Json の値は次のとおりです:
数値 (整数または浮動小数点数)
文字列 (二重引用符で囲む)
論理値 (true または false)
配列 (角括弧内)
オブジェクト (中括弧内)
Json を次のように変換するメソッドjavascript オブジェクトは ;
javascript オブジェクト JSON に変換します<html> <head> <title>Json测试</title> <script src="/Scripts/jquery-1.7.2.min.js" type="text/javascript"></script> <script type="text/javascript"> //基本上,Json返回的要么是对象,要么是数组,如果单纯返回一个字符串,那么就没有必要用Json了,因此 //Json基本就下面这些可,不过要注意双引号 var str0 = "{employees:'测试'}"; var obj0 = eval("(" + str0 + ")"); alert(obj0.employees); //输出测试 var str = "{name:'张三',Age:21}"; var obj = eval("(" + str + ")"); document.write(obj.name + obj.Age); //输出 张三21 alert(obj.name); //别看下面那段Json长,其实是一个对象,属性employees的值是一个对象数组。和上面的相比,只是name:张三 中的"张三"字符串 变成了对象数组而已 var str2 = '{ "employees" : [' + '{ "firstName":"Bill" , "lastName":"Gates" },' + '{ "firstName":"George" , "lastName":"Bush" },' + '{ "firstName":"Thomas" , "lastName":"Carter" } ]}'; var obj2 = eval("(" + str2 + ")"); alert(obj2.employees[0].firstName); //弹出 Bill var str3 = "[1,2,3,4,5,6]"; //json 数组 var obj3 = eval("(" + str3 + ")"); //输出 2 alert(obj3[1]); </script> </head> <body> <div id="div1"> </div> </body> </html>