JavaScript 문자열 정렬
JavaScript에서 문자열 정렬은 그 특성 때문에 약간 까다로울 수 있습니다. 일반적인 문제 중 하나는 sort() 메서드를 사용하여 문자열 속성을 기준으로 객체를 정렬하는 것입니다.
문제:
list.sort(function( a, b) { return a.attr - b.attr }) 문자열에 대해 종종 실패함 속성.
해결책:
JavaScript에서 문자열을 정렬하려면 정렬 함수 내에서 String.prototype.localeCompare를 사용하세요.
list.sort(function (a, b) { return ('' + a.attr).localeCompare(b.attr); });
변환하여 a.attr을 명시적으로 문자열에 추가하면 예외가 발생하지 않습니다. localeCompare는 로케일 인식 비교를 지원하며 여러 브라우저에서 널리 지원됩니다.
대체 접근 방식:
대체 방법은 다음 코드 조각을 사용하는 것입니다.
if (item1.attr < item2.attr) return -1; if ( item1.attr > item2.attr) return 1; return 0;
그러나 이 접근 방식은 로케일을 존중하지 않으며 서로 다른 환경에서 일관되지 않은 결과를 생성할 수 있습니다. 환경입니다.
위 내용은 JavaScript 개체 배열에서 문자열을 올바르게 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!