你如何表示字符串的JSON数组?

时间:2011-03-14 00:33:31

标签: json

这就是有效JSON所需要的,对吗?

["somestring1", "somestring2"]

4 个答案:

答案 0 :(得分:265)

我会在ChrisR awesome answer上详细说明并带来awesome reference的图片。

有效的JSON始终以花括号{或方括号[开头,没有别的。

{将启动object

left brace followed by a key string (a name that can't be repeated, in quotes), colon and a value (valid types shown below), followed by an optional comma to add more pairs of string and value at will and finished with a right brace

{ "key": value, "another key": value }
  

提示:虽然javascript接受单引号',但JSON只接受双重"

[将启动array

left bracket followed by value, optional comma to add more value at will and finished with a right bracket

[value, value]
  

提示:任何JSON解析器都会忽略元素之间的空格。

valueobjectarraystringnumberboolnull

Image showing the 6 types a JSON value can be: string, number, JSON object, Array/list, boolean, and null

所以是的,["a", "b"]是一个完全有效的JSON,就像你可以try on the link Manish pointed一样。

以下是一些额外有效的JSON示例,每个块一个:

{}

[0]

{"__comment": "json doesn't accept comments and you should not be commenting even in this way", "avoid!": "also, never add more than one key per line, like this"}

[{   "why":null} ]

{
  "not true": [0, false],
  "true": true,
  "not null": [0, 1, false, true, {
    "obj": null
  }, "a string"]
}

答案 1 :(得分:54)

在这种情况下,您的JSON对象是一个列表。 JSON几乎总是一个具有属性的对象;一组一个或多个键:值对,因此您很可能会看到一个字典:

{ "MyStringArray" : ["somestring1", "somestring2"] }

然后您可以询问"MyStringArray"的值,然后您将获得两个字符串"somestring1""somestring2"的列表。

我使用http://jsonlint.com/来验证我的JSON。

答案 2 :(得分:40)

基本上是的,JSON只是你的价值的javascript文字表示,所以你说的是正确的。

您可以在http://json.org/

上找到关于JSON表示法的非常明确和良好的解释

答案 3 :(得分:5)

String strJson="{\"Employee\":
[{\"id\":\"101\",\"name\":\"Pushkar\",\"salary\":\"5000\"},
{\"id\":\"102\",\"name\":\"Rahul\",\"salary\":\"4000\"},
{\"id\":\"103\",\"name\":\"tanveer\",\"salary\":\"56678\"}]}";

这是一个以Employee为对象的JSON字符串示例,然后是数组中的多个字符串和值作为对@cregox的引用...

有点复杂但可以在单个JSON字符串中解释很多。