Json中未定义的行为

时间:2012-05-04 20:25:36

标签: json json.net

当json字符串中的属性值设置为undefined时,应该会发生什么。 即:

{"Name":undefined}

以下示例使用json.net库。反序列化对象时抛出异常。

JsonConvert.DeserializeObject<SimpleObject>("{\"Name\":undefined}");

public class SimpleObject
{
  public string Name { get; set; }
}

Newtonsoft.Json.JsonReaderException was unhandled
  Message=Error reading string. Unexpected token: Undefined. Path 'Value', line 1, position 18.
  Source=Newtonsoft.Json
  LineNumber=1
  LinePosition=18
  Path=Value

1 个答案:

答案 0 :(得分:1)

我认为错误很好。

Jsonlint.org也会抛出错误。

阅读json.org上的文档,“value”元素可能有以下变体:

的字符串 数 宾语 排列 真正 假 空

如您所见,未列出undefined。对象也不算作未定义。