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

JavaScript에서 String.prototype.split() 함수와 같은 사용자 정의 함수 구현

<시간/>

문제

String 클래스의 프로토타입 객체에 있는 JavaScript 함수를 작성해야 합니다.

(원래의 split 함수는 두 개의 인수를 취하지만) 문자열 구분자를 유일한 인수로 취해야 합니다. 그리고 우리 함수는 구분 기호로 분리되고 분할된 문자열 부분의 배열을 반환해야 합니다.

예시

다음은 코드입니다 -

const str = 'this is some string';
String.prototype.customSplit = (sep = '') => {
   const res = [];
   let temp = '';
   for(let i = 0; i < str.length; i++){
      const el = str[i];
      if(el === sep || sep === '' && temp){
         res.push(temp);
         temp = '';
      };
      if(el !== sep){
         temp += el;
      }
   };
   if(temp){
      res.push(temp);
      temp = '';
   };
   return res;
};
console.log(str.customSplit(' '));

출력

[ 'this', 'is', 'some', 'string' ]