JSON語法格式


一、JSON數據格式

       名稱/值對

二、JSON值對數據類型

       數字    字符串   邏輯值    數組(在方括號中)     對象 (在花括號中)     null

     eg:

    {

     "staff":[

         {"name":"小明","age":"18"},

        {"name":"小紅","age":"15"},

       {"name":"小黃","age":"20"}

       ]

  }

三、JSON解析

      eval和Json.parse

        eval在代碼中使用很危險,特別是用它執行第三方的Json數據(其中可能包含惡意代碼)時,盡可能使用JSON.parse()方法解析字符串本身,該方法可以捕獲JSON中的語法錯誤

     eg1:

       (1)  var jsondata='{"staff":[{"name":"小明","age":"18"},{"name":"小紅","age":"15"},{"name":"小黃","age":"20"}]}';
              var jsonbj=eval('('+jsondata+')');
              alert(jsonbj.staff[0].name)

      (2)   var jsondata='{"staff":[{"name":"小明","age":"18"},{"name":"小紅","age":"15"},{"name":"小黃","age":"20"}]}';
              var jsonbj=JSON.parse(jsondata);
              alert(jsonbj.staff[0].name)

    eg2:

       (1)  var jsondata='{"staff":[{"name":"小明","age":alert(123)},{"name":"小紅","age":"15"},{"name":"小黃","age":"20"}]}';
              var jsonbj=eval('('+jsondata+')');
              alert(jsonbj.staff[0].name)

             會先彈出123,再彈出小明

       (2)   var jsondata='{"staff":[{"name":"小明","age":"18"},{"name":"小紅","age":"15"},{"name":"小黃","age":"20"}]}';
              var jsonbj=JSON.parse(jsondata);
              alert(jsonbj.staff[0].name)

              會報錯Uncaught SyntaxError: Unexpected identifier

四、JSON校驗工具(https://jsoncompare.com/#!/simple/)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM