2014-10-27 1 views
1

Мне было интересно, существуют ли ограничения для имен ключей в формате JSON. Ключи в большинстве примеров, которые я видел до сих пор, соответствуют RegExp [a-zA-Z\-_].Существуют ли ограничения для имен ключей в JSON-файлах?

{ 
    "name": "My Name", 
    "phone-number": 123 
} 

Но он также действителен, чтобы использовать пробелы, косые черты, умлауты и т. Д.?

{ 
    "name with spaces": "My Name", 
    "[phöne-/mobilé-] number": 123, 
    "/\- \")": "nothing", 
    "a \"good\" name" : "empty" 
} 
+0

если вы можете получить ключ для работы в javascript, вы можете получить ключ для работы в json, в основном. (j) ava (s) (o) bject (n), в конце концов. –

ответ

3

Нет, никаких ограничений нет. json.org содержит спецификацию для JSON. Ключами в объекте могут быть любые строки, а в производстве для string указано, что он может содержать любой символ Юникода, а также различные escape-последовательности.

0

Все, кроме третьей строки, являются действительными ключами json. Если у вас есть какое-либо сомнение по поводу какого-то конкретного ключа - вы всегда можете использовать JSON валидатор так: http://jsonformatter.curiousconcept.com/ Если вы заинтересованы в спецификации JSON - вы можете найти его на json.org

Смежные вопросы