JavaScriptでsnake_caseをcamelCaseに変換する方法

4 分で読了

snake_caseのAPIレスポンスをcamelCaseに変換するのは、フロントエンドで最も一般的なタスクの一つです。

単純な文字列変換

function snakeToCamel(str) {
  return str.replace(/_([a-z])/g, (_, c) => c.toUpperCase());
}
snakeToCamel("user_first_name"); // "userFirstName"

JSONキーの一括変換

function camelizeKeys(obj) {
  if (Array.isArray(obj)) return obj.map(camelizeKeys);
  if (obj !== null && typeof obj === 'object') {
    return Object.fromEntries(
      Object.entries(obj).map(([k, v]) => [snakeToCamel(k), camelizeKeys(v)])
    );
  }
  return obj;
}

const api = { user_name: "Alice", created_at: "2026-01-01" };
camelizeKeys(api); // { userName: "Alice", createdAt: "2026-01-01" }

ライブラリの活用

humpscamelcase-keyschange-caseがこの用途で人気のnpmパッケージです。

オンラインツール

camelCaseコンバーターまたはケースコンバーターハブをご利用ください。