localeCompare 에 대한 설명

2025. 5. 2. 17:47·Script

localeCompare는 JavaScript에서 문자열을 비교하는 메소드입니다.

이 메소드는 현재 로케일(지역 설정)의 언어 규칙에 맞게 두 문자열을 비교할 수 있게 해줍니다.

 

문자열.localeCompare(비교할문자열)

 

 

주요 특징

  1. 로케일 인식 비교: 현재 로케일의 정렬 규칙에 따라 문자열을 비교합니다. 이는 다양한 언어에서 올바른 알파벳 순서로 정렬할 때 중요합니다.
  2. 반환 값:
    • 기준 문자열이 비교 문자열보다 앞에 오면 음수를 반환합니다.
    • 두 문자열이 동등하면 0을 반환합니다.
    • 기준 문자열이 비교 문자열보다 뒤에 오면 양수를 반환합니다.
  3. 옵션: 비교를 사용자 정의하기 위한 추가 매개변수를 전달할 수 있습니다:
문자열.localeCompare(비교할문자열, 로케일, 옵션)

 

 

참고 소스

    // 이용일자, 분류, 사용금액, 가맹점 순으로 정렬
    cardTransactions.value = transactions.sort((a: CardTransaction, b: CardTransaction) => {
      // 1. 이용일자 (내림차순)
      const dateComparison = b.date.localeCompare(a.date);
      if (dateComparison !== 0) return dateComparison;

      // 2. 분류
      const categoryComparison = a.category.localeCompare(b.category);
      if (categoryComparison !== 0) return categoryComparison;

      // 3. 사용금액 (내림차순)
      const amountComparison = b.amount - a.amount;
      if (amountComparison !== 0) return amountComparison;

      // 4. 가맹점
      return a.merchant.localeCompare(b.merchant);
    });

 

이렇게 하면 사용자의 로케일 설정에 따라 가맹점 이름을 알파벳 순으로 정렬하며, 특수 문자나 언어별 정렬 규칙을 올바르게 처리합니다.

특히 한글과 같은 비 라틴 문자를 정렬할 때 매우 유용합니다.

 

 

-- Claude 3.7 sonnet 이 설명해줌

저작자표시 (새창열림)

'Script' 카테고리의 다른 글

배열을 활용하는 ES6 기술  (0) 2025.03.13
script 에서 import 시 { } 로 싸는 경우와 아닌 경우에 대해서  (0) 2025.02.26
객체 분해 할당(Destructuring assignment)  (0) 2025.02.26
'Script' 카테고리의 다른 글
  • 배열을 활용하는 ES6 기술
  • script 에서 import 시 { } 로 싸는 경우와 아닌 경우에 대해서
  • 객체 분해 할당(Destructuring assignment)
크레비즈
크레비즈
  • 크레비즈
    크레비즈 커뮤니티
    크레비즈
  • 전체
    오늘
    어제
    • 분류 전체보기 (69) N
      • Front-end (14) N
      • Back-end (7)
      • Python (11)
      • AI 공부 (7)
      • Mobile (4)
      • Script (4)
      • 인프라 (5)
      • 참고할 내용 (12)
      • reference page (0)
      • Project (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 미디어로그
    • 위치로그
    • 방명록
  • 링크

    • Spring: the source for modern java
  • 공지사항

    • 크레비즈 커뮤니티
  • 인기 글

  • 태그

    windsurf
    Claude
    토큰
    딥러닝
    vue
    vuejs
    claude sonnet
    PYTHON
    Access Token
    claude 3.7 sonnet
    ChatGPT
    Gemini
    fastapi
    Refresh Token
    CNN
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
크레비즈
localeCompare 에 대한 설명
상단으로

티스토리툴바