[알고리즘] Javascript Array.sort()

성준영·2022년 7월 25일
0

Array.sort() 는 배열을 정렬할 때 요소를 문자열로 취급하여 정렬하기 때문에 숫자를 정렬할 때에는 비교함수를 안에 작성해주어야 한다

비교함수는 두 개의 인자를 받고 숫자를 리턴해야 하는데, a와 b를 인자로 받는다고 할 때 리턴 값이 양수이면 b=>a 순서로 정렬되고 음수이면 a=>b 순서로 정렬된다 0을 리턴하면 그대로 있는다.

let numArray = [19, 4, 8, 30, 1, 3];

console.log(numArray.sort()); // [ 1, 19, 3, 30, 4, 8 ]
console.log(numArray.sort((a, b) => a - b)); // [ 1, 3, 4, 8, 19, 30 ]
console.log(numArray.sort((a, b) => b - a)); // [ 30, 19, 8, 4, 3, 1 ]

let stringArray = ["Steele", "Colt", "Data structures", "Algorithms"];

console.log(stringArray.sort()); // [ 'Algorithms', 'Colt', 'Data structures', 'Steele' ]
console.log(stringArray.sort((a, b) => a.length - b.length)); // [ 'Colt', 'Steele', 'Algorithms', 'Data structures' ]
profile
기록해버리기

0개의 댓글