Como converter snake_case para camelCase em JavaScript

4 min de leitura

Converter respostas API em snake_case para camelCase é uma das tarefas frontend mais comuns.

Conversão simples de string

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

Converter todas as chaves 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" }

Usando bibliotecas

humps, camelcase-keys e change-case são pacotes npm populares para isso.

Ferramenta online

Use o conversor camelCase ou o hub de conversão de case.