Почему данные JSON не содержат специальных символов? - PullRequest
0 голосов
/ 31 января 2011

Почему данные JSON не поддерживают специальные символы?

Если данные json содержат специальные символы и т. Д .: \r, /, \b, \t, вы должны передать их, но почему?

Ответы [ 2 ]

1 голос
/ 31 января 2011

JSON поддерживает все символы Unicode в строках. Что вы подразумеваете под "переводом"?

0 голосов
/ 01 февраля 2011

Эти символы должны быть экранированы, потому что так указано в спецификации JSON.Для некоторых символов причины просты - например, двойные кавычки необходимо экранировать, потому что обычные двойные кавычки заканчивают значение String, поэтому невозможно было бы определить маркер конца для символа в содержимом.По причине перевода строки, вероятно, требовалось ввести ограничение, что никакое значение String не будет охватывать несколько строк текста;и для другого управляющего символа, чтобы избежать «невидимых символов».Это похоже на экранирование, требуемое XML или CSV;все текстовые форматы данных требуют экранирования или запрещают использование определенных символов.

...