Contents ...
udn網路城邦
瞭解JSON花式
2017/07/15 12:46
瀏覽70
迴響0
推薦0
引用0
(虛擬主機推薦分享)

不難理解,就像是之前寫陣列一近似
這裡的範例是利用數字,但也可以是文字布林或者是陣列物件null。固然,混合就不消說了,絕對OK。

 

就會有良多,這個網站我覺得做得不錯
我不是故意要打它的告白,但這網站應該有助於JSON的進修

        <child>
            <name>Richard</name>
            <age>7</age>
        </child>

既然是花式,為何這麼多人愛用
可以好好瞭解一下

最後是網站上一最先附的範例

以下是錯誤的

    <childrens>

        </report>
    </student>

參考資料:

看起來很複雜,對吧?
其實不難

--------------------------------

 

除非你本身print,本身兜出JSON格式

Screen Shot 2012-12-24 at 12.12.01 PM  

可以看到不同說話對於這個資料花式的實作
接下來也會提到實作的部分

Screen Shot 2012-12-24 at 12.32.54 PM  

        <report>

最後用這二個類型竣事吧

{0:"Tom", 1:"John", 2:"Amy", 3:"Ivy"}  // error syntax

    <name>John Smith</name>
    <age>32</age>
    <employed>true</employed>

准確應改為

    <student>
        <name>Amy</name>
        <lastname>Lin</lastname>

["Tom", "John", "Amy", "Ivy"]

Screen Shot 2012-12-24 at 11.40.23 AM  

 

我是中文  就會釀成  \u6211\u662f\u4e2d\u6587

object  

 

類似這類 \u開首,接一串數字的工具

最後,練練英文,去JSON官方網站去看看吧

        </report>
    </student>

[{"name":"Tom","lastname":"Chen","report":[{"subject":"Math","score":80},{"subject":"English","score":90}]},{"name":"Amy","lastname":"Lin","report":[{"subject":"Math","score":86},{"subject":"English","score":88}]}]

</person>

幫忙你瞭解

用XML可能會這麼寫:

先記住這概念

所以物件和陣列,某方面來講(不斟酌資料損失),是可以互相轉換

----------------------------------------------------------------

{"subject":"Math","score":80}

姓名 Tom Chen 
數學80 
英文 90 

score它的值為80

全部拼起來就成那樣

陣列(array)

{"name":"Tom","lastname":"Chen","report": ...成就資料... }

http://en.wikipedia.org/wiki/List_of_Unicode_characters

        <report>

他就是用key-value的方式貯存

來個類型吧!

        <child>
            <name>Susan</name>
            <score>4</score>
        </child>

JSON全名叫做JavaScript Object Notation
就是在JavaScript之中,暗示物件的一種花樣

 

物件(object)用大括號 { }

這裡留意一點
json object的鍵值(key),一定要用文字做鍵值

--------------------------------

Screen Shot 2012-12-24 at 12.34.43 PM  

            <subject>
                <name>Math</name>
                <score>80</score>
            </subject>
            <subject>
                <name>English</name>
                <score>90</score>
            </subject>

 

我們做成大師看得懂的表格

平常這個一般處理JSON的函式庫都邑做掉

學生資料內有姓名和成就

別的有些字元在JSON不克不及直接打,需要做跳脫的(escape character) 在這
有些大家都很熟習,就不細講了

成績的部分,因為有很多成就資料,所以有效陣列 [] 包起來

 

成績單1

    <student>
        <name>Tom</name>
        <lastname>Chen</lastname>

            <subject>
                <name>Math</name>
                <score>86</score>
            </subject>
            <subject>
                <name>English</name>
                <score>88</score>
            </subject>

而全部JSON格局文件之中,是不能利用註解的

 

    </childrens>

--------------------------------

JSON格局簡單來說,就是這二句重點:

若 陣列 -> 物件

    <address>
        <street>701 First Ave.</street>
        <city>Sunnyvale, CA 95125</city>
        <country>United States</country>
    </address>

http://www.jsoneditoronline.org

Screen Shot 2012-12-24 at 12.45.37 PM  

硬要用key-value的體例解釋的話
就是0,1,2,3的照挨次的數字

這篇...我想就是給初度看JSON格局的人看的吧

在JSON的花樣中,關於中文或其他非英文的部份

[{ ...學生1... },{ ...學生2... }]

可以用這個工具做轉換(不外一般程式的library會做掉啦,這不用憂郁)

官方網站有個迷宮圖,有助於理解

這裡有些字碼表供參考

{"subject":"Math","score":80}

方才也有提到這是個成績單
一最先用一個陣列 [] 包起來,然後是二個物件 {}

例如

文字(text)的例子

若 物件 -> 陣列

應該不會太難

布林(Boolean)

        <child>
            <name>Susan</name>
            <score>4</score>
        </child>

<data>

 

假如懂了它的格局,不會太難

這裡說的object,不管你曾在哪裡聽過這個名詞

<person>

value  

像是

array  

\"
\\
\/
\b
\f

\r
\t

 

google搜尋一下:json format

 

像是subject這個key有個值叫Math

 

就會損失鍵值(key)的資料,留下值(value)
或是程式到時辰指定說,要鍵值陣列(key array),就會把所有的鍵值(key)合併一起成陣列

 

這就是json裡的object

物件(object)

一個成就資料,也是個物件

{"0":"Tom", "1":"John", "2":"Amy", "3":"Ivy"}

必然要用Unicode encode過

Untitled_Panorama1  

 

比起XML,JSON的花樣看起來是否是簡練許多呢?

姓名 Amy Lin 
數學86
英文88 

陣列(array)用中括號 [ ]

</data>

陣列可能就比力熟悉些

--------------------------------

成績單2

http://zh.wikipedia.org/zh-tw/JSON

{"name":"Tom","lastname":"Chen","report":[{ ...成就1... },{ ...成績2... }]} 

Screen Shot 2012-12-24 at 1.57.08 PM  

假如用XML的花樣寫就長如許

 

成就單

http://www.json.org

就能夠將每一個值編上數字

key-value就是指一個鍵值(key)對應一個值(value),跟變數很像

若是你看不懂JSON,可以用雷同這類線上JSON格式化的網站

備註

http://www.htmlescape.net/stringescape_tool.html

[0,4,5,2,7,8,3]

{"name":"John Smith","age":32,"employed":true,"address":{"street":"701 First Ave.","city":"Sunnyvale, CA 95125","country":"United States"},"children":[{"name":"Richard","age":7},{"name":"Susan","age":4},{"name":"James","age":3}]}

 

[true, true, false, false, true, true]

IT委外|MIS外包|資訊委外|主機代管|伺服器代管|虛擬主機|郵件代管|郵件託管|雲端方案|雲端主機|網站代管|網站託管

限會員,要發表迴響,請先登入