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

문자열을 동일한 부분으로 분할 JavaScript

<시간/>

문자열과 숫자 n을 두 개의 인수로 사용하는 JavaScript 함수를 작성해야 합니다(숫자는 문자열의 길이를 정확히 나눌 수 있어야 함). 그리고 길이가 같은 n개의 문자열 배열을 반환해야 합니다.

예를 들어 -

If the string is "helloo" and the number is 3
Our output should be:
["ho", "eo", "ll"]

여기에서 각 부분 문자열은 정확히 (배열 길이/n) 문자를 포함합니다. 그리고 각 부분 문자열은 문자열의 해당하는 첫 글자와 마지막 글자를 번갈아 사용하여 구성됩니다.

이 함수의 코드를 작성해 봅시다 -

예시

const str = 'helloo';
const splitEqual = (str, n) => {
   if(str.length % n !== 0){
      return false;
   }
   const len = str.length / n;
   const strArray = str.split("");
   const arr = [];
   let i = 0, char;
   while(strArray.length){
      if(i % 2 === 0){
         char = strArray.shift();
      }else{
         char = strArray.pop();
      };
      if(i % len === 0){
         arr[i / len] = char;
      }else{
         arr[Math.floor(i / len)] += char;
      };
      i++;
   };
   return arr;
};
console.log(splitEqual(str, 3));

출력

콘솔의 출력은 다음과 같습니다. -

[ 'ho', 'eo', 'll' ]