대한 VALUE1 및 자바 스크립트 함수 값 2 코드 란이다다음 정렬 방법
function compare(value1, value2){
return (value1-value2);
};
var values = [0, 1, 5, 10, 15];
values.sort(compare);
alert(values);
코드에 VALUE1 및 값 2는 무엇인가? 왜 내가 value1 - value2를 반환 할 때 배열 항목을 오름차순으로 반환하지만 왜 function에서 value2 - value1을 반환하면 배열 항목이 내림차순으로 반환됩니까?
내가 물어보고 싶은 또 다른 질문은 왜 비교 함수가 sort 메소드에서 정의 될 때 아무런 인수도 없다는 것입니다.
또한 sort는 각 쌍에 대한 비교 호출의 반환 값을 확인합니다. 값이 음수이면 value1이 value2보다 작고, 결과가 0이면 값이 같고 결과가 양수이면 value1이 value2보다 큽니다. 당신이 한 일은 결과의 부호를 가지고 노는 것을 오름차순과 내림차순 정렬을 구현하는 것이 었습니다. 이 결과에 따라 sort()는 정렬 할 배열의 항목을 정렬하는 방법을 알고 있습니다. 이 메소드는 모든 유형의 데이터 (문자열, 부동 또는 더 복잡한 유형 -이 경우 올바르게 비교하는 것이 중요)에 사용될 수 있으며 사용됩니다. – Adi
@Adi 감사합니다. 그 부분을 언급하는 것을 잊었습니다. – Chris
고마워,하지만 난 여전히 궁금해서 거기에 인자 값을 비교 함수에 정의 된, 내가 무슨 뜻인지 values.sort (compare (argumentValue1, argumentValue2)); – dramasea