这是有效的JSON吗?
{
"name": "foo",
"name": "bar"
}
如果是这样,应该如何解释?
答案 0 :(得分:7)
根据RFC,它在技术上是合法的,但强烈劝阻:
对象SHOULD中的名称是唯一的。
您可以选择以下两条路线之一:
"var"
条目。答案 1 :(得分:2)
根据RFC 4627,不鼓励使用重复的名称。请参阅 2.2部分。对象强>:
对象中的名称应该是唯一的。
以上网址还引用了我们RFC 2119,它指定了如何解释应该这个词:
应该
这个词,或形容词“推荐”,意味着有 在特定情况下可能存在有效理由忽略 特定项目,但必须理解全部含义和 在选择不同的课程之前仔细权衡。
然而,许多解析器& JSON API将其实现为应该总是,并在遇到重复属性时抛出错误或忽略多个值。这是includes jQuery.parseJSON()以及.NET's JSON serialization。
答案 2 :(得分:0)
不有效的JSON,因为有两个名称变量。阅读this以帮助您更好地理解JSON。
答案 3 :(得分:0)
JSon对象与任何其他对象一样,不能具有两个具有相同名称的属性。这与在地图中两次使用相同密钥的方式相同是非法的。
如果在一个对象中有两个具有相同名称的键,则JSONObject会抛出异常。您可能希望更改对象,以便不在同一对象下重复键。在这种情况下,更改将使您的json键名称具有值作为数组
答案 4 :(得分:0)
不,不是。您有两个具有相同标签/名称/标题的属性。这是一个非常simple and short explanation of the JSON