728x90
자바스크립트 배열 Array API - sort()
array.sort();
[개념 이해]
array.sort() : 배열의 요소를 정렬한 후 반환 (주의 : 원본 배열 또한 정렬된다.)
단, 정렬기준은 전달되는 함수에 따라 달라진다.
샘플 예제 ↓
array.sort() 같은 경우에는
여러 가지 예제를 준비하였다,
1. 숫자 정렬
2. 문자열 정렬
[javascript : 숫자 정렬]
//배열 [Number] 정렬
const arr = [1,10,2,9,3,8,4,7,5,6];
//오름차순
const upSorted = arr.sort((first,second)=>{
//x,y 비교 후 x가 큰 경우 자리 바꾸기
//why? 오름차순은 앞 숫자가 작아야함
const x = first;
const y = second;
if(x > y) return 1;
else if (x < y) return -1;
else return 0;
});
console.log('-----오름차순 정렬-----');
console.log('반환된 배열 : ' + upSorted);
console.log('원본 배열 : ' + arr);
//내림차순
const downSorted = arr.sort((first,second)=>{
//x, y 비교 후 y가 큰 경우 자리 바꾸기
//why? 내림차순은 뒤 숫자가 작아야함
const x = first;
const y = second;
if(x > y) return -1;
else if (x < y) return 1;
else return 0;
});
console.log('-----내림차순 정렬-----');
console.log('반환된 배열 : ' + downSorted);
console.log('원본 배열 : ' + arr);
[결과 출력]
-----오름차순 정렬-----
반환된 배열 : 1,2,3,4,5,6,7,8,9,10
원본 애열 : 1,2,3,4,5,6,7,8,9,10
-----내림차순 정렬-----
반환된 배열 : 10,9,8,7,6,5,4,3,2,1
원본 애열 : 10,9,8,7,6,5,4,3,2,1
[javascript : 문자열 정렬]
//배열 [String] 정렬
const animals = ['dog','cat','horse','bird','zebra'];
//오름차순
const upSorted = animals.sort((first,second)=>{
//x,y 비교 후 x가 큰 경우 자리 바꾸기
//왜 toUpperCase를 사용? 대소문자 섞여있을시에도
//정렬에 영향을 주지 않기 위해서
const x = first.toUpperCase();
const y = second.toUpperCase();
if(x > y) return 1;
else if(x < y) return -1;
else return 0;
});
console.log('-----오름차순 정렬-----');
console.log('반환된 배열 : ' + upSorted);
console.log('원본 배열 : ' + animals);
//내림차순
const downSorted = animals.sort((first,second)=>{
//x, y 비교 후 y가 큰 경우 자리 바꾸기
const x = first;
const y = second;
if(x > y) return -1;
else if (x < y) return 1;
else return 0;
});
console.log('-----내림차순 정렬-----');
console.log('반환된 배열 : ' + downSorted);
console.log('원본 배열 : ' + animails);
[결과 출력]
-----오름차순 정렬-----
반환된 배열 : bird,cat,dog,horse,zebra
원본 배열 : bird,cat,dog,horse,zebra
-----내림차순 정렬-----
반환된 배열 : zebra,horse,dog,cat,bird
원본 배열 : zebra,horse,dog,cat,bird
728x90
'프론트엔드 > Javascript' 카테고리의 다른 글
[Javascript] 페이지 로드 이후 스크립트의 실행 defer (0) | 2021.02.21 |
---|---|
[Javascript] 배열 Array API - splice() (0) | 2021.02.16 |
[Javascript] 배열 Array API - reverse() (0) | 2021.02.14 |
[Javascript] 배열 Array API - includes() (0) | 2021.02.13 |
[Javascript] 배열 Array API - shift(), unshift() (0) | 2021.02.12 |
댓글