取自https://github.com/interagent/http-api-design#downcase-paths-and-attributes
也是Downcase属性,但使用下划线分隔符 可以在JavaScript中键入不带引号的属性名称,例如:
service_class:"首先"
""属性名称是什么意思可以输入没有引号"?
答案 0 :(得分:1)
如果你有:
{ foo-bar: 1 }
你会得到一个“SyntaxError:Unexpected token:”错误,因为“ - ”被误认为是一个减法运算符:
{ foo - bar : 1 }
然后你需要引号来表明这是一个属性名称:
{ "foo-bar": 1 }
如果使用下划线而不是破折号,则不存在歧义:
{ "foo_bar": 1 }
{ foo_bar: 1 } // This also works
答案 1 :(得分:1)
这是一个有效的Javascript文字:
{ foo_bar: 'baz' }
这不是:
{ foo-bar: 'baz' }
后者必须是:
{ 'foo-bar': 'baz' }
所有它都在谈论;前一段提到"短划线路径名称" ,然后说你不应该在JSON中使用破折号。它不是蛇对抗camelCase,它的蛇与"破坏案例"。