Zgodnie z zaleceniem w sprawie JSON API specyfikacji miejscu, powinniśmy korzystać ze wszystkich nazwisk członków dolnej w przypadku JSON oddzielonych myślnikami:Dlaczego specyfikacja interfejsu JSON API sugeruje użycie łącznika/minusa do rozdzielania słów w nazwach członków?
dozwolonych i zalecanych znaków dla bezpiecznego nazewnictwa URL członkami są zdefiniowane w specyfikacji formatu. Również ujednolicić członkiem nazwy następujące (bardziej restrykcyjne) zasady zalecane są:
nazwy członek powinien rozpocząć i zakończyć z bohaterami „az” (+ 0061 do U + 007A U) nazwy użytkownika powinna zawierać tylko znaki "az" (U + 0061 do U + 007A), "0-9" (U + 0030 do U + 0039), a myślnik minus (U + 002D HYPHEN-MINUS, "-") jako separator między wielokrotnymi słowa.
Więc w zasadzie, powinniśmy używać JSON tak:
{
"first-name": "Jason",
"last-name": "Tough"
}
nie pozwoliłoby ono cumbersome dostęp do tych właściwości w JavaScript? Lub jakikolwiek inny język programowania, zwłaszcza jeśli chcemy generować klasy z JSON Schema?
Jaka jest motywacja tego zalecenia?
Wyjaśnia motywacji: Aby używać znaków, które są bezpieczne w adresie URL. – Barmar
Tak. Ta specyfikacja jest głupia, ponieważ podkreślenie ('_') jest bezpiecznym znakiem URL. Sądzę, że 1. myśleli, że użycie '-' zachowuje ich od zmiany typu i 2. nie są programistami javascript, więc nigdy nie używali składni' foo.bar'. Każda specyfikacja JSON, która nie powoduje, że użycie javascript jest priorytetem, nie powiedzie się – slebetman
Nie będę opisywał składni tablic ani wyrażeń szablonów jako "bardzo kłopotliwych". – dandavis