> 웹 프론트엔드 > JS 튜토리얼 > JavaScript 재미있는 질문: 문자열 정렬

JavaScript 재미있는 질문: 문자열 정렬

黄舟
풀어 주다: 2017-02-13 16:16:26
원래의
1982명이 탐색했습니다.

당신의 임무는 주어진 문자열을 정렬하는 것입니다.

문자열의 각 단어에는 문자열에서 단어의 위치를 ​​나타내는 별도의 숫자가 포함되어 있습니다. 숫자

19 사이에 있으므로 1을 포함하는 단어가 첫 번째 단어가 됩니다.

주어진 문자열이 비어 있으면 빈 문자열을 반환합니다.

예: "is2 Thi1s T4est 3a"

반환: "Thi1s is2 3a T4est"

알겠습니다. 그러한 함수를 작성하는 방법을 살펴보겠습니다.

1. 먼저 주어진 문자열을 공백에 따라 분할합니다. 결국 배열은 문자열보다 조작하기 쉽습니다.

2. 그런 다음 정렬 규칙을 공식화합니다. 숫자가 더 큰 단어가 순위가 낮아집니다.

3. 그런 다음 배열의 sort 메서드를 사용하여 정렬 규칙 익명 함수를 전달하여 사용자 정의 정렬을 수행합니다.

4. 마지막으로 sort 후에 배열을 집계하고 문자열을 반환합니다.

이 문제는 꽤 쉬우며 숙련된 학생들은 빨리 풀 수 있습니다.


function findNumber(str){
    for(var i=0;i<str.length;i++){
        var chr = str.charAt(i);
        if(!isNaN(chr)){
            return parseInt(chr);
        }
    }
}

function order(words){
    return words.split(" ").sort(function(a,b){
        return findNumber(a) - findNumber(b);
    }).join(" ");
}
로그인 후 복사

위 내용은 JavaScript 흥미로운 질문: 문자열 정렬에 관한 내용입니다. 더 많은 관련 내용을 보려면 PHP 중국어 웹사이트(www.php.cn)를 주목하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿