사용 이유

  • JavaScript는 숫자 배열을 정렬(Sort)할 때 문자로 취급하므로, 제대로 순서가 잡히지 않는 현상이 일어날 수 있습니다.
    • 예) [3, 1, 2, 100, 4, 200].Sort()가 1, 100, 2, 200, 3, 4로 나올 수 있습니다.
  • 위와 같은 상황을 방지하기 위해서 배열.Sort() 내부에 커스텀 함수를 주어 순서를 정리하도록 합니다.

사용 예

예) 출처 : Data Structures & Algorithms with JavaScript

function compare(num1, num2) {
	return num1 - num2;
}
var nums = [3, 1, 2, 100, 4, 200];
nums.sort(compare);
print(nums); // 1, 2, 3, 4, 100, 200
  • return 값이 음수(-)일 때
    • 왼쪽 값을 좌측 순서로
    • 예) 왼쪽 숫자가 오른쪽 숫자보다 작다는 것
  • return 값이 동일할 때
    • 동일 순서
  • return 값이 양수(+)일 때
    • 오른쪽 값을 좌측 순서로
    • 예) 왼쪽 숫자가 오른쪽 숫자보다 크다는 것
블로그 이미지

RIsN

,
블로그 이미지

RIsN

,

:: Study Recursion Function

::: How replay function self

function sum(arr, n) {
  // Only change code below this line
  // :: When n is 0 or minus, Don't Sum anything.
  // ::: also When you last Index
  if(n <= 0) {
    return 0;
  } else {
    // :: Remember first value and Call <Next : self(n - 1)>
    return arr[n - 1] + sum(arr, n - 1);
  }
  // Only change code above this line
}
블로그 이미지

RIsN

,