命名慣例指南

camelCase vs snake_case

camelCase 移除分隔符並讓後續單字首字母大寫;snake_case 使用底線分隔小寫單字。適合哪一種取決於語言、API、資料庫與框架慣例。

作者 Camel Case Converter 編輯團隊發布於 2026年9月12日最後審閱

快速比較

差異camelCasesnake_case
範例userProfileImageuser_profile_image
常見用途JavaScript/TypeScript 識別字與許多 Java 風格 propertyPython 識別字、資料庫欄位、資料流程與設定格式
單字分隔符底線 (_)
大小寫第一個單字小寫,後續首字母大寫通常全部小寫
縮寫範例apiResponseUrlapi_response_url
典型邊界frontend / application modelbackend / API / database field

何時使用 camelCase

camelCase 像 userProfileImage 一樣緊湊,適合本來就用於 variable、property、function 的生態系。

何時使用 snake_case

snake_case 像 user_profile_image 一樣讓單字邊界清楚,在 Python、SQL、資料處理與 API 很常見。

情境選擇表

情境建議格式原因
JavaScript / TypeScript 應用程式碼camelCaseJavaScript 生態系常用 lower camel case 來命名 variable、parameter、method 與 object property。
Python 應用程式碼snake_casePEP 8 建議 function 與 variable 使用小寫字母加底線。
JSON / HTTP API 邊界遵循 API contract應用程式內部維持單一命名格式,只在 serialization 或 transport 邊界轉換一次。
既有 database / analytics schema遵循現有 schema修改成熟的外部命名 contract,通常比在應用程式邊界做轉換成本更高。

應該選擇哪種命名風格?

使用目前工作層預期的慣例。JavaScript frontend 可以在邊界把 snake_case API 正規化為 camelCase;每一層內部一致性最重要。

常見錯誤

  • 不要假設縮寫只有一種正確寫法;userID、userId、user_id 都可能出現在真實系統中。
  • 不要在同一個 application model 或 cache key 混用原始 snake_case 與已正規化的 camelCase 資料。
  • 不要把 class instance、file、stream 等非 JSON 值當成 plain object 遞迴改 key。

在命名風格之間轉換

貼上識別字即可查看目標格式與支援的開發者命名風格。轉換會在瀏覽器本機執行。

偵測:snake_case
snake_case 輸出
user_profile_image_url

所有命名格式

camelCase
userProfileImageUrl
PascalCase
UserProfileImageUrl
snake_case
user_profile_image_url
kebab-case
user-profile-image-url
CONSTANT_CASE
USER_PROFILE_IMAGE_URL
dot.case
user.profile.image.url
path/case
user/profile/image/url

轉換會在瀏覽器本機執行,輸入不會傳送到轉換伺服器。