成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

闡述JSON轉化的結構事實說明介紹

開發
JSON是Javascript,Flash Action Script等符合ECMA Script規范的腳本語言的輕量級數據表示,但是由于XML強大的自描述性,因此在實踐應用過程中

這些都是常見的數據結構事實上大部分現代計算機語言都以某種形式支持它們這使得一種數據格式在同樣基于這些結構的編程語言之間交換成為可能,當JSON轉化為XML時,還有一些細節需要注意,這些細節,很多開源的XML轉JSON代碼里面都沒有應用到,我推薦的XML 轉換JSON格式的時候額外遵循的規則:

  1. <root> 
  2.   <node1>node1_value</node1> 
  3.   <node2>node2_value</node2> 
  4. <root> 
  5. 轉化后:  
  6. var jsonObj = {  
  7. root : {  
  8.   'node1' : {  
  9.     '$' : 'node1_value'  
  10.   },  //當然,這里也可以為 $ : 'node1_value',但是推薦Dic名字加入引號的方式  
  11.   'node2' : {  
  12.     '$' : 'node2_value'  
  13.   }  
  14. }  
  15. }   
  16.  
  17. 2 XML Attribute,應該作為"$"字符開頭的,“子集合,值”的方式轉化,例如:  
  18. <root root_att1="root_att1_value" root_att2="root_att2_value"> 
  19.   <node1 node1_att1="node1_att1_value" node1_att2="node1_att2_value">node1_value</node1> 
  20.   <node2 node2_att1="node2_att1_value" node2_att2="node2_att2_value">node2_value</node2> 
  21. </root> 
  22. 轉化后:  
  23. var jsonObj = {  
  24. root : {  
  25.   '$root_att1' : 'root_att1_value',  
  26.   '$root_att2' : 'root_att2_value',  
  27.   'node1' : {  
  28.     '$' : 'node1_value',  
  29.     '$node1_att1' : 'node1_att1_value',  
  30.     '$node1_att2' : 'node1_att2_value'  
  31.   },  
  32.   'node2' : {  
  33.     '$' : 'node2_value',  
  34.     '$node2_att1' : 'node2_att1_value',  
  35.     '$node2_att2' : 'node2_att2_value'  
  36.   }  
  37. }  

大家可以看到,轉換過程中頻繁使用到字符"$",這一點很關鍵,因為如果Attribute也采用和Child Element相同的方式轉化,那么將產生子元素的歧義,后果是,一旦發生XML -> JSON轉化,將不可能準確的進行此操作的逆過程,即生成的JSON無法轉化為之前的XML。

此這里使用XML Element和XML Attribute中都不可能出現,而JSON轉化中允許的"$"字符,標識XML Attribute(熟悉JS著名類庫Prototype的朋友,對這個字符應該很熟悉 :)),讓XML和JSON互相轉化的過程完全可逆。#t#

當然,本文沒有提到XML Namespace和XML其它特殊元素,如<!DOCTYPE>,<!ENTITY>標簽。原因是,我認為希望轉換為JSON的XML應該事先由XMLDOM做處理,簡化并規避轉化過程中可能出現的很多特殊的因素,以便讓XML -> JSON轉化過程專注于數據格式本身,而更加通俗順暢;因此,這些因素可以認為不在本文討論的格式轉化范圍內。

責任編輯:chenqingxiang 來源: 賽迪
相關推薦

2010-01-07 17:48:02

JSON結構

2010-01-05 17:35:09

JSON數組格式

2010-01-08 09:03:38

返回JSON數據

2009-12-18 16:28:35

ADO.NET結構

2010-02-03 17:37:30

Python語法

2010-01-06 10:27:32

JSON數組

2010-01-07 17:58:49

JSON數值

2010-01-06 17:06:05

Json格式

2010-01-08 11:11:38

JSON 序列化

2010-01-12 09:39:58

C++語言

2013-11-25 11:04:45

2010-01-08 13:33:06

JSON來歷

2010-02-04 13:52:30

Android ap

2021-07-14 06:40:03

Spring Boot端點性能

2010-01-07 09:31:27

Json數據異常

2010-01-06 15:30:51

JSON和XML

2010-01-06 15:18:51

Json插件

2010-01-07 17:02:27

JSON序列化

2010-01-05 17:52:34

JSON形式

2010-01-06 10:10:04

JSON建構
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩在线不卡 | 免费毛片网站 | 亚洲伊人a | 国产精品一区二区av | 日本不卡一区 | 国产一级电影在线 | 日日操日日干 | 亚洲成人中文字幕 | 91大神在线看 | 久久久一区二区三区 | 欧美综合一区二区三区 | 精品视频一区二区三区四区 | 中文字幕欧美一区二区 | 91免费小视频 | 午夜精品91| 欧美精品1区2区 | 四虎永久在线精品免费一区二 | 蜜桃综合在线 | 亚洲国产精品久久久久秋霞不卡 | 亚洲精品中文字幕在线 | 欧美一级黄色片在线观看 | 日韩久久精品 | 精品人伦一区二区三区蜜桃网站 | 成人免费av | 亚洲一区二区电影在线观看 | 欧美一级在线免费观看 | 国产人成精品一区二区三 | 福利精品 | 我爱操| 黑人精品欧美一区二区蜜桃 | 性生活毛片 | 久久久成人免费一区二区 | 亚洲成a| 国产欧美一区二区在线观看 | 国产自产c区 | 中文字幕11页 | 草草影院ccyy | 国产免费观看久久黄av片涩av | 欧美日韩国产一区二区三区 | 国产精品久久国产精品 | 黄免费观看视频 |