compareFunction이 제공되지 않으면 유니코드 순서로 변환
<script> var number = [50, 20, 10, 9,8,7,6,5,4,3,2,1]; number.sort(); </script>[ 1, 10, 2, 20, 3, 4, 5, 50, 6, 7, 8, 9 ] 유니코드 순서
compareFunction
<script> var number = [50, 20, 10, 9,8,7,6,5,4,3,2,1]; var callback = function (a, b) { if (a > b) { return 1; } else if (a < b) { return -1; } else { return 0; //a = b }}; number.sort(callback); </script>[ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20, 50 ]
compareFunction a - b (정순)
<script> var number = [50, 20, 10, 9,8,7,6,5,4,3,2,1]; var callback = function (a, b) { return a - b; }; number.sort(callback); </script>[ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20, 50 ]
compareFunction b - a (역순)
<script> var number = [50, 20, 10, 9,8,7,6,5,4,3,2,1]; var callback = function (a, b) { return b - a; }; number.sort(callback); </script>[50, 20, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
값으로서의 함수 : callback