TypeScript 예시

TypeScript에서 snake_case를 camelCase로 변환

typed helper는 underscore token을 처리하고 예측 가능한 camelCase 문자열을 반환할 수 있습니다.

작성자 Camel Case Converter 편집팀게시 2026. 9. 12.마지막 검토

TypeScript 코드

function snakeToCamel(value: string): string {
  const parts = value.trim().replace(/^_+|_+$/g, "").split(/_+/).filter(Boolean)
  if (parts.length === 0) return ""
  return parts[0].toLowerCase() + parts.slice(1).map((part) => part.charAt(0).toUpperCase() + part.slice(1).toLowerCase()).join("")
}

snakeToCamel("user_profile_image")
// "userProfileImage"

string→string 형태는 typed utility, adapter, mapping code에서 재사용하기 쉽습니다.

type-level remapping과 runtime 데이터 변환은 별개이므로 network data는 실제 runtime 변환이 필요합니다.

고려할 예외 사례

  • 약어 규칙에 따라 apiResponseURL이 필요할 수 있습니다.
  • 재귀 object key 변환에서는 TypeScript type이 runtime 결과를 어디까지 반영할지 결정해야 합니다.
  • 혼합 구분자는 더 일반적인 tokenization이 필요합니다.
  • 서로 다른 source key가 같은 target key가 되면 조용히 덮어쓰면 안 됩니다.

예시

변환 전변환 후
user_profile_imageuserProfileImage
__user__profile__userProfile
api_response_urlapiResponseUrl
created_atcreatedAt

TypeScript 코드

const cases: Array<[string, string]> = [
  ["user_profile_image", "userProfileImage"],
  ["__user__profile__", "userProfile"],
  ["api_response_url", "apiResponseUrl"],
  ["created_at", "createdAt"],
]

for (const [input, expected] of cases) {
  if (snakeToCamel(input) !== expected) throw new Error(input)
}

온라인에서 변환 테스트

빠른 확인, batch, 약어 처리, 혼합 네이밍 입력을 브라우저 도구로 테스트하세요.

감지: snake_case
camelCase 출력
userProfileImageUrl

모든 네이밍 형식

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

변환은 브라우저에서 로컬로 처리되며 입력은 변환 서버로 전송되지 않습니다.