Неопределенное поведение в Json

Что должно произойти, если значение свойства установлено в неопределенное значение в строке json. то есть:

{"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 ответ

Решение

Я думаю, что ошибка в порядке.

Jsonlint.org тоже выдает ошибку.

И при чтении документации на json.org элемент "value" может иметь следующие варианты:

строка номер объекта массив истина ложь ноль

Как видите, undefined НЕ указан в списке. Объект также не считается неопределенным.

Другие вопросы по тегам