내가 이해한 게 맞는지 몰겠음
var x=[21,40,70,99,100]; 이런 배열이 있다고 치면
console.log(x.sort());하면 맨 앞자리 숫자만 비교해서 문자열로 변환됨과 동시에 오름차순(앞자리만 따짐) 정렬하잖아?
여기서 함수를 넣어서
console.log(x.sort(function(a,b){
if(a>b){
return 1;}
if else(a<b){
return -1;}
else(a=b){
return 0;}
}); 더 쉽게 하면 if문 빼고 안에 return a-b만 넣어도 되긴 하는데
그게 중요한 게 아니라 원리를 따져보면 약간 승패 개념? 비슷하다고 직관적으로 생각하긴 했는데 맞음?
모든 경우의 수로 하나하나 비교해서 돌리겠지만
결국 100은 어떤 숫자랑 비교해도 1이 리턴되고
99는 100빼고는 1이 리턴되고
70은 99하고 100한테는 -1리턴 당해도 나머지 둘 한테는 1리턴 되니까 중간이고
대충 따져보면
21 -> -4
40 -> -2
70 -> 0
99 -> 2
100 -> 4
sort가 앞자리 비교해서 오름차 순으로 정리해주니까
21 40 70 99 100 이렇게 정렬 해주는 거 같은데 이거 맞음?
독학 코린이 이해 점 시켜줘..
Js sort()관련 질문좀
익명(211.244)
2023-07-24 14:12
추천 0
댓글 5
다른 게시글
-
야이개씹병신같은 세키들아 횽왔다 ㅋㅋㅋㅋㅋ국비자퇴중..(gookbijatoipro) | 23.07.24추천 0
-
개발자에게 난관은 [1]익명(115.21) | 23.07.24추천 1
-
코딩 정신병자가 하기좋냐?익명(106.101) | 23.07.24추천 0
-
이클립스 탭 여러개 선택하는거 없음?익명(125.133) | 23.07.24추천 0
-
아 개좆병신같은나라익명(125.180) | 23.07.24추천 2
-
국비 네이비트 앱 어때?||(1.241) | 23.07.24추천 2
-
니들은 타자 빠름? [6]투명인간(jnacn9rzbvks96) | 23.07.24추천 0
-
개발자 업무비중 [1]익명(118.235) | 23.07.24추천 0
-
백엔드 어드민 페이지 만들때 리액트 씀?? 타임리프 배울까? [3]익명(39.7) | 23.07.24추천 0
-
나님 문제해결능력 ㄱㅆㅅㅌㅊ !!♥냥덩의태..(re2002) | 23.07.24추천 0
아 아니었네 형들 찾았어 a-b를 했을 때 결과 값이 음수면 위치를 바꾸지 않고 a-b를 했을 때 결과 값이 양수면 위치를 바꾸는 과정을 반복해서 더 이상 연산이 없을 때까지 반복 하는 거래 ㅇㅇ
compart function(a,b) 비교해서 즉, a-b해서 음수면 a를 b보다 낮은 색인으로 정렬합니다(자리를 바꾸지 X) a-b해서 양수가 나오면 b가 먼저 오도록 소트합니다(자리를 바꿈) a-b해서 0을 반환하면 a와 b를 서로에 대해 변경하지 않고 모든 다른 요소에 대해 정렬합니다.
상상을 쳐하지말고 걍 검색하면 그런거 실험해볼 필요도 없음
그러게 검색하니까 걍 나와서 바로 이해함 ㅋㅋㅋㅋ
이걸 그대로 gpt한테 물어보면 된다