Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript의 일부 스크램블 알파벳 시퀀스를 참조하여 배열이 사전순으로 정렬되어 있는지 확인

<시간/>

문자열 단어의 배열을 첫 번째 인수로 취하는 JavaScript 함수를 작성해야 합니다. 함수에 대한 두 번째 인수는 26개의 영어 소문자 알파벳을 모두 포함하지만 임의의 스크램블 순서로 된 문자열입니다.

우리 함수의 임무는 배열의 단어가 두 번째 인수에 의해 지정된 순서에 따라 사전순으로 올바르게 배치되었는지 확인하는 것입니다. 그렇다면 true, 그렇지 않으면 false를 반환해야 합니다.

예를 들어 -

단어의 입력 배열과 순서가 -

인 경우
const arr = ['this', 'is', 'something', 'mad'];
const order = 'hdetljnopqabcuvwxfgirsykmz';

그러면 출력은 다음과 같아야 합니다. -

const output = true;

't'가 'i' 앞에 오고, 'm' 앞에 오고, 'm' 앞에 오기 때문입니다.

예시

이에 대한 코드는 -

const arr = ['this', 'is', 'something', 'mad'];
const order = 'hdetljnopqabcuvwxfgirsykmz';
const isPlacedCorrectly = (arr = [], order) => {
   const { length } = arr;
   for(let i = 0; i < length - 1; i++){
      for(let j =0; j < arr[i].length;j++){
         if(order.indexOf(arr[i][j])< order.indexOf(arr[i+1][j])) {
            break;
         }
         else if (order.indexOf(arr[i][j]) === order.indexOf(arr[i+1][j])){
            continue;
         } else {
            return false;
         }
      }
   }
   return true;
};
console.log(isPlacedCorrectly(arr, order));

출력

콘솔의 출력은 -

true