JavaScript

[JS] sort

뷰엉 2022. 11. 29. 10:22
반응형
SMALL

 

Array.prototype.sort()

 

 

sort() 메서드는 배열의 요소를 적절한 위치에 정렬한 후 그 배열을 반환한다. 
# arr.sort([compareFunction])
매개변수 : compareFunction
정렬순서를 정의하는 함수. 생략하면 배열은 각 요소의 문자열 변환에 따라 각 문자의 유니코드 포인트 값에 따라 정렬된다.

 

let numbers = [3,2,6,4,1];
numbers.sort(function (a, b) {
	return a - b;
})
console.log(numbers);
// ->[1, 2, 3, 4, 6]

 

 

let items = [
  { name: 'Edward', value: 21 },
  { name: 'Sharpe', value: 37 },
  { name: 'And', value: 45 },
  { name: 'The', value: -12 },
  { name: 'Magnetic', value: 13 },
  { name: 'Zeros', value: 37 }
];


//value 기준으로 정렬
items.sort(function(a, b) {
	if(a.value > b.value) {
    	return 1;
    }
    if(a.value < b.value) {
    	return -1;
    }
    // a must be equal to b
    return 0;
});

// name 기준으로 정렬
items.sort(function(a, b){
	let nameA = a.name.toUpperCase();
    let nameB = b.name.toUpperCase();
    if (nameA < nameB) {
    	return -1;
    }
    if (nameA > nameB) {
    	return 1;
    }
    // 이름이 같을 경우
    return 0;
});

 

 

 

 

참고 : https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/sort

반응형
LIST