都可以达到上面大括号的效果。
这是为什么呢?
其实中括号就相当于把大括号里元素extra给独立出来一个格式,而extra就是一个JSON列表,这后面会讲到。
所以中括号虽然能把元素给拆分成一段一段的列表,但无法像大括号一样直接列出来,比如上面的:
{“text“:“我的天“,“color“:“red“,“text“:“淦“,“text“:“***“}
如果把{}换成[]就不行了,就会报错。想让其不报错只能拆成一段一段的列表。
而且实际上JSON的全格式就是中括号,大括号格式只不过是从中括号里面拆出来的。
其实中括号这个格式没有你们想象的那么简单,注意到上面的中括号第一个例子中的“淦“和“***“了吗?它们并没有被加上“text“。
但他们确实就是text。
这是为什么?其实这就是一种偷懒的方法。
因为JSON最常用的就是text元素,所以JSON的作者就觉得这么多text看着太眼花缭乱。就简化了。
但是这种简化只能在中括号格式里用,大括号里不能用。
这又是为什么?
其实在JSON里,被大括号包起来的整个就是一个对象。所以大括号格式本身就只有一个对象。
而中括号格式里可以放很多个大括号,所以中括号里可以有很多个对象。