반응형
SMALL
localeCompare 메소드는 문자열이 다른 문자열 앞에, 뒤에, 아니면 같은 위치에 오는지를 숫자로 반환하는 String 객체의 메소드입니다. 이 메소드는 대소문자 구분, 악센트, 기타 문자열 비교에서 로케일(언어 및 지역 설정)을 고려한 정렬 순서를 제공합니다.
기본적으로 **localeCompare**는 호출하는 문자열이 비교 대상 문자열보다
- 알파벳상 뒤에 오면 양의 정수,
- 앞에 오면 음의 정수,
- 같은 경우에는 0을 반환합니다.
이 메소드는 비교할 때 로케일의 정렬 규칙을 사용하여, 다양한 언어와 스크립트에서 문자열을 올바르게 정렬할 수 있도록 돕습니다.
사용법
const returnValue = string1.localeCompare(string2);
- **string1**은 기준 문자열입니다.
- **string2**는 비교 대상 문자열입니다.
- 반환값은 **string1**이 **string2**보다 알파벳 순으로 앞에 있으면 음의 정수, 같으면 0, 뒤에 있으면 양의 정수입니다.
예제
const a = 'réservé'; // with accents, lowercase
const b = 'RESERVE'; // no accents, uppercase
console.log(a.localeCompare(b));
console.log(a.localeCompare(b, 'en', { sensitivity: 'base' }));
첫 번째 localeCompare 호출에서는 대소문자와 악센트를 모두 고려하여 결과를 반환합니다. 두 번째 호출에서는 sensitivity 옵션을 **'base'**로 설정해 대소문자와 악센트를 무시하고 비교합니다.
비교 옵션
localeCompare는 선택적인 locales와 options 인수를 받을 수 있어, 비교 방식을 상세히 제어할 수 있습니다. 예를 들어, 대소문자 구분(sensitivity), 비교할 로케일(locales), 숫자 비교(numeric) 등을 설정할 수 있습니다.
console.log('ä'.localeCompare('z', 'de')); // a German-specific comparison
이 메소드는 다국어를 지원하는 웹사이트나 애플리케이션에서 문자열을 정렬하거나 비교할 때 매우 유용합니다.
728x90
반응형
LIST
'javascript > 기초' 카테고리의 다른 글
startsWith() (0) | 2024.04.10 |
---|---|
for ...in (0) | 2024.04.10 |
includes() (0) | 2024.04.10 |
for...of (1) | 2024.04.10 |
배열에서 배열 빼기 (0) | 2024.04.10 |