본문 바로가기

Javascript

[Javascript] sort( )

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함수는 따로 복제본을 만드는 것이 아니라 원본 배열을 변경하는 함수이기 때문에 주의해야한다!!

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

 

'Javascript' 카테고리의 다른 글

[Javascript] Object.entries( )  (0) 2020.07.07
[Javascript] 로또추첨기  (0) 2020.07.07
[Javascript] map()  (0) 2020.05.30
[Javascript] fill( ) 메서드  (0) 2020.05.29
[Javascript] forEach문, Array( ), fill( )  (0) 2020.05.29