<address id="ttjl9"></address>

      <noframes id="ttjl9"><address id="ttjl9"><nobr id="ttjl9"></nobr></address>
      <form id="ttjl9"></form>
        <em id="ttjl9"><span id="ttjl9"></span></em>
        <address id="ttjl9"></address>

          <noframes id="ttjl9"><form id="ttjl9"></form>

          JavaScript對象、JSON對象、JSON字符串的區別

          2018-8-15    seo達人

          如果您想訂閱本博客內容,每天自動發到您的郵箱中, 請點這里

          JavaScript對象、JSON對象、JSON字符串的區別

          一、首先看下什么是JSON

          JSON:JavaScript Object Natation,JavaScript對象的表現形式,已經發展成一種輕量級的數據交換格式。

          JavaScript對象的表現形式,指定義JS對象的一種方式。
          數據交換格式,即用于交換的數據格式。

          JSON是種格式:

          數據在鍵值對中, 數據由逗號分隔, 花括號保存對象, 方括號保存數組.
          鍵值對組合中的名稱寫在前面,值對寫在后面,中間用冒號隔開
          JSON 值可以是: 數字, 字符串, 邏輯值, 數組, 對象, null

          JSON與XML相比,JSON更輕量級,XML更重量級,目前XML更多的用作配置文件。

           

          二、再來看下什么是javascript對象

          雖然有人說JavaScript 中的所有事物都是對象,但是 javascript 中,并不是所有的值都是對象,而有兩種值類型:原始值和對象。
          (參考:http://blog.csdn.net/justjavac/article/details/8432989 JavaScript 并非所有的東西都是對象)

          JavaScript原始值:
          字符串,數字,布爾值,null,正則表達式
          注:在 JavaScript 中所有的數字都是浮點數

          JavaScript內置對象:
          Object(基礎對象),
          Array(數組),
          Function(函數構造器),
          Math(數學對象),
          String(字符串對象),
          Number(數值對象),
          Boolean(布爾對象),
          Date(日期時間),
          Error(異常對象),
          RegExp(正則表達式對象),
          Arguments(函數參數集合)
          (參考:http://www.cnblogs.com/lianzi/archive/2011/08/26/2154253.html javascript內置對象列表及Array和String的常用方法)

          其中 Boolean, Number, String 是原始值的包裝器,很少直接使用

          JavaScript 創建對象的方法:
          1)使用內置對象
          var person=new Object();//創建基礎對象實例,然后為其添加屬性
          person.firstname="Bill";
          person.lastname="Gates";
          person.age=56;
          2)自定義對象構造
          function Person(firstname,lastname,age){//自定義對象構造器,然后創建實例
          this.firstname=firstname;
          this.lastname=lastname;
          this.age=age;
          }
          var person=new Person("Bill","Gates",56);
          //定義對象構造器,可以使用“this”關鍵字構造、也可以使用原型prototype構造
          (參考:http://www.jb51.net/article/20428.htm JavaScript 三種創建對象的方法)
          3)使用直接量(literals 有直接量、字面量、常量等詞義)
          var arr = [obj.a, 0, obj.a+1];
          var obj = {name: 'John' + 'McCarthy'};

          注:
          準確的說不叫直接量(literals),而叫初始器(Initialiser),可以在里面使用表達式
          初始器有對象和數組兩種,所以有“對象直接量”,“數組直接量”這樣的說法

          初始器基于JSON,要符合JSON語法格式,
          因此有人說JSON是JavaScript的原生格式,
          在JavaScript中處理JSON數據不需要任何特殊的API或者工具包

          但是初始器里面是可以有表達式的,就像例子里的一樣
          (參考:http://www.cnblogs.com/snandy/p/3439790.html JavaScript中的直接量與初始器的區別)

          原始值只包括字符串,數字,布爾值,null,正則表達式,不包括 Undefined 和 Initialiser

           

          三、JavaScript對象、JSON對象、JSON字符串

          javascript對象:javascript中,除開JavaScript原始值(字符串,數字,布爾值,null,正則表達式)的都是javascript對象

          JSON對象:JSON對象這種叫法不太準確,可以理解為使用基于JSON的初始器定義的javascript對象

          JSON字符串:符合JSON語法格式的字符串

           

           

          javascript對象和JSON字符串相互轉換:
          1:jQuery插件支持的轉換方式
          $.parseJSON( jsonstr );$("xxx").serializeArray();
          2:瀏覽器支持的轉換方式(Firefox,chrome,opera,safari,ie9,ie8)等瀏覽器
          JSON.parse(jsonstr);JSON.stringify(jsonobj);
          3:Javascript支持的轉換方式
          eval('(' + jsonstr + ')');//不推薦
          4:JSON官方的轉換方式
          引入 json.js 或 json2.js,用法同第二種
          (參考:http://www.cnblogs.com/luminji/p/3617160.html JS中對象與字符串的互相轉換)

           

          JAVA對象和JSON字符串相互轉換:
          可以用jackson、Gson和json-lib等
          (參考:http://www.blogjava.net/bolo/archive/2014/04/16/412533.html 使用jackson對Java對象與JSON字符串相互轉換的一些總結)

          藍藍設計www.syprn.cn )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 、平面設計服務



          日歷

          鏈接

          個人資料

          藍藍設計的小編 http://www.syprn.cn

          存檔

          亚洲va欧美va天堂v国产综合