您好,今日明帅来为大家解答以上的问题。json字符串转map,json字符串相信很多小伙伴还不知道,现在让我们一起来看看吧!
1、简单地说[2] ,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 Web 客户机传递给服务器端程序。
2、这个字符串看起来有点儿古怪,但是JavaScript很容易解释它,而且 JSON 可以表示比"名称 / 值对"更复杂的结构。
3、例如,可以表示数组和复杂的对象,而不仅仅是键和值的简单列表。
4、名称 / 值对按照最简单的形式,可以用下面这样的 JSON 表示"名称 / 值对": {"firstName":"Brett"}这个示例非常基本,而且实际上比等效的纯文本"名称 / 值对"占用更多的空间: firstName=Brett但是,当将多个"名称 / 值对"串在一起时,JSON 就会体现出它的价值了。
5、首先,可以创建包含多个"名称 / 值对"的 记录,比如: {"firstName":"Brett","lastName":"McLaughlin","email":"aaaa"}从语法方面来看,这与"名称 / 值对"相比并没有很大的优势,但是在这种情况下 JSON 更容易使用,而且可读性更好。
6、例如,它明确地表示以上三个值都是同一记录的一部分;花括号使这些值有了某种联系。
7、表示数组当需要表示一组值时,JSON 不但能够提高可读性,而且可以减少复杂性。
8、例如,假设您希望表示一个人名列表。
9、在XML中,需要许多开始标记和结束标记;如果使用典型的名称 / 值对(就像在本系列前面文章中看到的那种名称 / 值对),那么必须建立一种专有的数据格式,或者将键名称修改为 person1-firstName这样的形式。
10、如果使用 JSON,就只需将多个带花括号的记录分组在一起:{ "people":[ {"firstName":"Brett","lastName":"McLaughlin","email":"aaaa"}, {"firstName":"Jason","lastName":"Hunter","email":"bbbb"}, {"firstName":"Elliotte","lastName":"Harold","email":"cccc"} ]}这不难理解。
11、在这个示例中,只有一个名为 people的变量,值是包含三个条目的数组,每个条目是一个人的记录,其中包含名、姓和电子邮件地址。
12、上面的示例演示如何用括号将记录组合成一个值。
13、当然,可以使用相同的语法表示多个值(每个值包含多个记录): { "programmers": [{ "firstName": "Brett", "lastName": "McLaughlin", "email": "aaaa" }, { "firstName": "Jason", "lastName": "Hunter", "email": "bbbb" }, { "firstName": "Elliotte", "lastName": "Harold", "email": "cccc" }], "authors": [{ "firstName": "Isaac", "lastName": "Asimov", "genre": "sciencefiction" }, { "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" }, { "firstName": "Frank", "lastName": "Peretti", "genre": "christianfiction" }], "musicians": [{ "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" }, { "firstName": "Sergei", "lastName": "Rachmaninoff", "instrument": "piano" }]}这里最值得注意的是,能够表示多个值,每个值进而包含多个值。
14、但是还应该注意,在不同的主条目(programmers、authors 和 musicians)之间,记录中实际的名称 / 值对可以不一样。
15、JSON 是完全动态的,允许在 JSON 结构的中间改变表示数据的方式。
16、在处理 JSON 格式的数据时,没有需要遵守的预定义的约束。
17、所以,在同样的数据结构中,可以改变表示数据的方式,甚至可以以不同方式表示同一事物。
本文就为大家分享到这里,希望小伙伴们会喜欢。