JavaScript 필수 배열 함수 정리

유관희·2022년 5월 12일
0
post-thumbnail

👘 sort()

배열의 순서를 정렬한다.

해당 배열 자체를 바꾼다.
인자로 비교 인자를 받는다.

const numArr = [5, 4, 3, 2, 1];
numArr.sort();
console.log(numArr);		// [1, 2, 3, 4, 5];

이해가 잘 간다.

그러나 아래의 코드를 보자.

const numArrStrange = [10, 24, 115, 34, 264];
numArrStrange.sort();
console.log(numArrStrange);	//[10, 115, 24, 264, 34];

원래같으면

[10, 24, 34, 115, 264]가 리턴돼야 할 텐데

이렇게 정렬이 된 이유는
아스키코드 순서이기 때문에 무언가 뒤죽박죽이다.

해결하는 방법은, 인자로 a, b를 넣어 a, b를 비교해
a가 b보다 작으면 -1을 return,
a가 b보다 크면 1을 return,
a와 b가 같으면 0을 return하여 정렬하는 것 이다.

이 방법보다 간단하게 쓰이는 방법은
a와 b를 빼서, 음수가 나오면 그대로,
양수가 나오면 다음 수와 자리를 바꾸는 방법이다.

var arrNum = [ 10, 24, 115, 34, 264 ] ;
 
let result = arrNum.sort(function(a, b){
	return a - b ;
}) ;
 
console.log( result ) ;		// [10, 24, 34, 115, 264]코드를 입력하세요



profile
안녕하세요~

0개의 댓글