我看到很多问题都与访问使用连字符(kebab-case)的JSON密钥有关,但是现在我发现自己想知道应该在我的密钥中坚持使用camelCase还是snake_case。我知道连字符在语言之间移植时也会产生复杂的映射。我已经看到一些JSON反序列化库将这些键转换为camelCase样式。
例:
var something = {
"some-value": 'thing'
}
VS
var something = {
"someValue": 'thing',
"some_other_value": 'thing_two'
}
4
REST对于有效负载格式无话可说。
—
埃里克·斯坦
为什么在JSON中使用kebab-case?人们通常将camelCase用于JSON,因为遵循编程环境的命名约定始终是一种好习惯,而对JavaScript中的变量使用camelCase则是一种标准实践。尽管我假设您正在使用JSON与JavaScript进行通信。
—
Alternatex
我看到问题是用javascript标记的,但问题本身似乎是关于不同语言/库之间的API。如果您担心使用javascript,请注意点号不适用于连字符。
—
伊兹卡塔'16
这实际上不是一个坏习惯,因为JSON与语言无关,因此不应受任何特定语言的语法的约束。就是说,仅使用字母数字字符是有意义的,因为这可以直接映射到所有主流语言中的标识符,因此这将导致最少的映射麻烦。
—
JacquesB '16
@Alternatex:“ kebab-case”为+1 :-)
—
gnasher729