JavaScript
[JavaScript] 다중 조건 정렬
hid1
2023. 10. 12. 21:16
const array = [[3,5,4], [1,4,3], [1,2,5]]
array 배열을 정렬할 때, 배열의 첫번째 값을 기준으로 오름차순 정렬을 하면 다음과 같이 할 수 있다.
array.sort((a,b) => a[0]-b[0])
console.log(array)
//[[1,4,3], [1,2,5], [3,5,4]]
첫번째 값이 동일할 시 두번째 값을 기준으로 정렬하고 싶을 때가 있다.
그럴 땐 간단하게 다음과 같이 할 수 있다.
array.sort((a,b) => a[0]-b[0] || a[1]-b[1])
console.log(array)
//[[1,2,5], [1,4,3], [3,5,4]]
앞의 연산이 0일 경우 두 값이 동일하다고 판단되어 다음 조건으로 판단된다.
array.sort((a,b) => {
if(a[0] < b[0]) return -1
if(a[1] < b[1]) return -1
return -1
})
이 점을 이용하여 if 문 등을 통해 더 많은 다중 조건으로 정렬할 수 있고 숫자 이외에 문자로도 판별하여 정렬할 수 있다.
반응형