При синхронизации с серверной частью с подчеркиванием преобразовать в CamelCase для использования в JavaScript?

TL/DR :Какой хороший способ использовать соглашение об именовании с подчеркиванием на стороне сервера (RoR )с соглашением об именовании в верблюжьем регистре на стороне клиента (JS)

Среды программирования на стороне сервера -, такие как Ruby on Rails, используют переменные с подчеркиванием. Традиционно в JavaScript используются переменные в верблюжьем регистре.Это проблематично при отправке данных с клиента на сервер.

Например, рассмотрим отправку информации о пользователе клиенту. В базе данных может быть свойство с именем num _раз _упорядочено, но в JavaScript вы обычно хотите ссылаться на это как numTimesOrdered.

Кто-нибудь придумал элегантный способ справиться с этим? Вот несколько вариантов, ни один из них особенно хорош:

  1. Преобразование данных в camelCase при получении с сервера.
  2. Использовать camelCase при отправке с сервера
  3. Используйте соглашение об именах с подчеркиванием в вашем Javascript (, хотя тогда вы несовместимы с любыми сторонними библиотеками, такими как jQuery)
  4. Используйте соглашение об именах в верблюжьем регистре на вашем бэкэнде (, хотя тогда вы не соответствуете соглашениям вашего бэкэнда)

Я склоняюсь к #3 и использую символы подчеркивания в своем JavaScript. Однако это будет выглядеть странно, когда я использую сторонние библиотеки в стиле camelCased.

17
задан Geoff 19 August 2012 в 18:04
поделиться