JSON文件中的键名是否有限制?

时间:2014-10-27 16:25:33

标签: regex json character-encoding special-characters limits

我想知道JSON格式中的键名是否有任何限制。到目前为止,我见过的大多数示例中的键都与RegExp [a-zA-Z\-_]匹配。

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

但是使用空格,斜杠,变音符号等也是有效的吗?

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

2 个答案:

答案 0 :(得分:4)

不,没有限制。 json.org包含JSON规范。对象中的键可以是任何字符串,string的产生表示它可以包含任何Unicode字符以及各种转义序列。

答案 1 :(得分:0)

除第三个字符串外的所有内容都是有效的json密钥。 如果您对某些特定密钥有任何疑问 - 您可以随时使用这样的JSON验证器:http://jsonformatter.curiousconcept.com/ 如果您对JSON的规范感兴趣 - 可以在json.org

上找到它