sort()는 기본적으로 배열에서 문자열을 정렬한다
var 어레이 = [7,3,5,2,40];
어레이.sort(); // [2,3,40,5,7]
이렇게 변경하면 오름차순 정렬이된다
var 어레이 = [7,3,5,2,40];
어레이.sort(function(a,b){
return a - b
});
하지만 sort 함수의 동작 원리를 잠깐 설명해드리자면
① sort 함수의 파라미터두개는 array 자료 안에 있던 데이터들을 의미합니다.
a, b 이건 그니까 7, 3 이거랑 똑같다고 보시면 됩니다.
② sort 함수는 양수(+)를 return 하면 a를 오른쪽 b를 왼쪽으로 보냄
음수(-)를 return 하면 a를 왼쪽 b를 오른쪽으로 보냄
이렇게 동작하도록 되어있습니다.
③ sort 함수는 a, b자리에 7과 3을 대입해보고 끝나는게 아니라
7, 5
7, 2 등
array 안에 있는 모든 자료들을 다 알아서 적용해봅니다.
즉, sort 는 오름차순정렬하기위해서 앞에값과 뒤의값을 비교해서 앞의값이 크다면 뒤로보내는 구조이다
가장중요한 사실은 sort()는 새로운 배열을 반환하는게 아니라 기존의 배열을 변형시킨다는 것이다
반응형
'Archive' 카테고리의 다른 글
[JS] Ajax (0) | 2021.11.01 |
---|---|
[JS] filter & map (0) | 2021.11.01 |
[JS] input & change event (0) | 2021.10.31 |
[JS] e.target vs e.currentTarget (이벤트버블링) (0) | 2021.10.30 |
Flutter 화면 이동하기 (0) | 2021.10.29 |