命名規則ガイド

camelCase vs kebab-case

camelCase は区切りを除いて大文字で境界を示し、kebab-case は小文字の単語をハイフンでつなぎます。同じ Web プロジェクトでも異なるレイヤーで共存します。

Camel Case Converter 編集チーム 著公開日 2026/09/12最終レビュー

クイック比較

違いcamelCasekebab-case
backgroundColorbackground-color
主な用途JavaScript 識別子、object property、DOM style、application codeURL、slug、CSS 系名称、file/config、CLI 向けテキスト
単語の区切りなしハイフン (-)
大文字小文字内部語は大文字始まり通常すべて小文字
JavaScript 識別子利用可能未引用では不可
典型的な Web 境界application codeURL / CSS / text name

camelCase を使う場面

camelCase は JavaScript 識別子として直接使えます。CSS の background-color は JavaScript style では backgroundColor になります。

kebab-case を使う場面

kebab-case はハイフンで境界が明確になり、URL、slug、file 名、CSS、設定で読みやすい形式です。

用途別の選び方

場面推奨形式理由
JavaScript 識別子 / object propertycamelCaseハイフンは未引用の JavaScript 識別子では使えませんが、camelCase はそのまま使えます。
URL・slug・多くの filenamekebab-case大文字小文字に依存せず、ハイフンで単語境界を読みやすくできます。
CSS property と JavaScript style accessCSS は kebab-case、JavaScript は camelCaseCSS はハイフン区切り、DOM / React の style API は対応する camelCase 名を使います。
Custom element 名ハイフンを含む名前Custom element 名にはハイフンが必要なので、kebab-case に近い命名が platform 制約に合います。

どの命名スタイルを選ぶべき?

JavaScript 識別子には camelCase、外部のハイフン名が期待される場所には kebab-case を使い、必要な境界だけ変換します。

よくある間違い

  • --brand-color のような CSS custom property を機械的に camelCase 化しないでください。先頭 -- と名前自体に意味があります。
  • kebab-case を未引用の JavaScript 変数名に使うと、ハイフンは減算演算子として解釈されます。
  • URL や file の命名規則をそのまま source code 内の識別子に適用しないでください。

命名スタイル間で変換

下に識別子を貼り付けると、対象形式と対応する命名形式を確認できます。変換はブラウザ内で実行されます。

検出: snake_case
kebab-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

変換はブラウザ内で行われ、入力は変換サーバーへ送信されません。