아마도 당신은 자바스크립트에서 배열 정렬을 사용해 왔을 것입니다.
어쩌면 그것이 올바른 결과를 제공할 것이라고 항상 믿었을 수도 있습니다.
적어도 나는 그렇게 생각하곤 했는데, 어느 날 다음 코드를 봤다:
[5,10,1].sort();
아마도 결과가 다소 예상치 못한 것일 수 있습니다. 결과는 다음과 같습니다.
[1, 10,5]
주의 깊게 조사한 결과 기본 정렬 방법은 정수 데이터를 기준으로 정렬하지 않고 문자열 일치를 사용하는 것으로 나타났습니다.
즉, 위 코드에서 오류가 발생하는 비율은 10명 중 1명입니다.
물론 콜백 함수를 sort 메서드에 전달할 수 있는 방법이 많이 있습니다.
[5,10,1].sort (function( x,y){
if(x>y) {return 1;
}else{
return -1
}
}
); 🎜>
이렇게 하면 예상한 결과를 얻을 수 있습니다.
우연히 발견한 경우, 잊어버리지 않도록 기록해 두세요.