json簡單說就是javascript中的對象和數組,因此這兩種結構就是對象和數組兩種結構,經過這兩種結構能夠表示各類複雜的結構。
一、對象:對象在js中表示爲「{}」括起來的內容,數據結構爲 {key:value,key:value,...}的鍵值對的結構,在面向對象的語言中,key爲對象的屬性,value爲對應的屬性值,因此很容易理解,取值方法爲 對象.key 獲取屬性值,這個屬性值的類型能夠是 數字、字符串、數組、對象幾種。
二、數組:數組在js中是中括號「[]」括起來的內容,數據結構爲 ["java","javascript","vb",...],取值方式和全部語言中同樣,使用索引獲取,字段值的類型能夠是 數字、字符串、數組、對象幾種。
通過對象、數組2種結構就能夠組合成複雜的數據結構了。
下面的方法可以把數組和字典轉換爲json串,可是NSString的對象並非jsonObject,因此在傳入NSString的對象的時候會報錯
Invalid top-level type in JSON writejavascript
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:connectorDict options:0 error:nil];java
NSString *jsonString1 = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];json