Javascript

[Javascript] sort( )

MinCoding 2020. 7. 7. 01:37

sort()

자바스크립트에서 제공해주는 배열안의 원소를 정렬해주는 내장함수이다. 


결과

그러나 문자의 순서로 정렬이 되기 때문에 숫자의 크기대로 나오지 않는다.

 

array.sort(function( a , b){ return a - b; });

정렬_오름차순
결과

예를 들어, ( 7, 3 ) 또는( 7, 8 ) 들어왔다고 하쟈.

7-3 = 4  0보다 크므로 순서를 바꾼다. 

7-8 = -1 0보다 작으므로 순서를 바꾸지 않는다.

 

즉, 정렬할 요소의 값을 뺐을때 음수면 순서를 바꾸지 않고 양수면 순서를 바꾼다.


이런 순서를 거쳐서 정렬이 된다.

이 과정은 오름차순이고

반대로, 요소를 a , b로 주었을 때, return b - a하면 내림차순이 되는것이다!!

정렬_내림차순
결과


객체 정렬

 

결과

 

 

 

sort함수는 따로 복제본을 만드는 것이 아니라 원본 배열을 변경하는 함수이기 때문에 주의해야한다!!

아무생각없이 이름 오름차순부터 나이 내림차순까지 한번에 코딩했다가 값이 전부 똑같아서 당황했다ㅋㅋㅠ