본문 바로가기

JavaScript

[JavaScript] localeCompare()

기준 문자열과 참조 문자열의 정렬 순서를 숫자로 반환합니다.

앞은 -로 뒤는 +로 같을 경우 0을 반환하게 됩니다.

 

// TEST 1
'a'.localeCompare('c');

// TEST 2
'check'.localeCompare('against');

// TEST 3
'a'.localeCompare('a');

// TEST 4
'a'.localeCompare('A');

// TEST 5
'b'.localeCompare('A');

TEST 1

'a'는 'c'보다 사전상으로 앞에 있기 때문에 -1을 반환합니다.

 

TEST 2 

'check'는 'against'보다 사전상으로 뒤쪽에 있기 때문에 1을 반환합니다.

 

TEST 3 

'a'와 'a'는 같이 위치에 정렬되기 때문에 0을 반환합니다.

 

TEST 4 & TEST 5

'a'와 'A'는 -1을 반환합니다.

'b'와 'A'는 1을 반환합니다.

 a A b B c C ... 의 순서로 되어있는 것을 알 수 있습니다.

 

 

**

구분을 할 때 -, +로 구분하는 것을 권장합니다.

대부분의 브라우저에서는 앞은 -1, 뒤는 1로 반환되지만, 일부 브라우저에서는 -2 또는 2로 반환할 수도 있기 때문입니다.

 

배열을 정렬하는 것도 가능합니다.

var items = ['sun', 'bed', 'car']
items.sort((a, b) => a.localeCompare(b));

위의 코드는 ["bed", "car", "sun"]의 값을 반환합니다.

 

 

 

 

 

참고 자료 - https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace

관련 문제 - 프로그래머스 JavaScript Level1 코딩테스트 연습 > 연습문제 > 문자열 내 마음대로 정렬하기

관련 문제 풀이 - [프로그래머스 JavaScript Level1] 문자열 내 마음대로 정렬하기

'JavaScript' 카테고리의 다른 글

[Javascript] for문  (0) 2018.12.10
[Javascript] if문  (0) 2018.12.10