JSON学习笔记

JSON:JavaScript 对象标记法(JavaScript Object Notation)。

  • JSON 文件的文件类型是 ".json"
  • JSON 文本的 MIME 类型是 "application/json"
  • JSON 语法规则

    JSON 语法是 JavaScript 对象表示法语法的子集。

    • 数据在名称/值对中
    • 数据由逗号分隔
    • 花括号保存对象
    • 方括号保存数组

    如:对象 "employees" 是包含三个对象的数组。每个对象代表一条关于某人(有姓和名)的记录。

    { "employees": [ { "firstName":"Bill" , "lastName":"Gates" }, { "firstName":"George" , "lastName":"Bush" }, { "firstName":"Thomas" , "lastName":"Carter" } ] }

     可以像使用JS数组一样的,如拿它的某个属性:employees[0].lastName;  返回的内容是:Gates

                                               可以像这样修改数据:employees[0].lastName="xxx";

    类似XML,相比 XML 的不同之处

    • 没有结束标签
    • 更短
    • 读写的速度更快
    • 能够使用内建的 JavaScript eval() 方法进行解析
    • 使用数组
    • 不使用保留字

    **************************************************

     

    • 在 JavaScript 中创建 JSON 对象
    <html> <body> 
       Name: <span id="jname"></span><br /> Age: <span id="jage"></span><br /> Address: <span id="jstreet"></span><br /> Phone: <span id="jphone"></span><br /> 
    <script type="text/javascript"> var JSONObject= { "name":"Bill Gates", "street":"Fifth Avenue New York 666", "age":56, "phone":"555 1234567"}; document.getElementById("jname").innerHTML=JSONObject.name document.getElementById("jage").innerHTML=JSONObject.age document.getElementById("jstreet").innerHTML=JSONObject.street document.getElementById("jphone").innerHTML=JSONObject.phone </script> 
    </body> </html> 

     

    备注: JSONObject不可改名字,是JSON中用来将字符串等转化为JSON对象的实例,如果将蓝色代码和红色代码调换

             位置,不出效果。

     

    • <h2>通过 JSON 字符串来创建对象</h3>
      <html>
      <body>
      <p>
      First Name: <span id="fname"></span><br /> 
      Last Name: <span id="lname"></span><br /> 
      </p> 
      <script type="text/javascript">
      var txt = '{"employees":[' +
      '{"firstName":"Bill","lastName":"Gates" },' +
      '{"firstName":"George","lastName":"Bush" },' +
      '{"firstName":"Thomas","lastName":"Carter" }]}';
      
      var obj = eval ("(" + txt + ")");
      
      document.getElementById("fname").innerHTML=obj.employees[1].firstName 
      document.getElementById("lname").innerHTML=obj.employees[1].lastName 
      </script>
      </body>
      </html>
      
       
      备注:

      由于 JSON 语法是 JavaScript 语法的子集,JavaScript 函数 eval() 可用于将 JSON 文本转换为 JavaScript 对象。

      eval() 函数使用的是 JavaScript 编译器,可解析 JSON 文本,然后生成 JavaScript 对象。必须把文本包围在括号中,这样才能避免语法错误。

      •  

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    你可能感兴趣的:(json)