Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

JavaScript - 문자열에서 처음 n개의 문자 제거하기

이번 글에서는 문자열과 숫자 n을 입력받아, 해당 문자열에서 처음 n개의 문자를 제거한 새로운 문자열을 반환하는 JavaScript 함수를 작성해 보겠습니다.

문제 이해하기

예를 들어 원본 문자열이 다음과 같고,

const str = "this is a string"

n = 5라고 가정하면, 앞의 5개 문자("this ")가 제거되어 출력 결과는 다음과 같아야 합니다.

const output = "is a string"

구현 방법

이 함수는 두 가지 경우를 고려해야 합니다. 첫째, 제거할 문자 수(n)가 문자열 전체 길이보다 크다면 모든 문자가 제거되므로 빈 문자열을 반환하는 것이 자연스럽습니다. 둘째, 그렇지 않은 경우에는 n번째 위치부터 끝까지의 문자만 잘라내어 반환하면 됩니다.

문자열 자르기에는 substr(), substring(), 또는 slice() 메서드를 사용할 수 있습니다. 아래 예제에서는 substr()을 활용했습니다.

코드 작성

다음은 실제 구현 코드입니다.

const mobileNumber = '+915389534759385';
const secondNumber = '+198345985734';

const removeN = (str, num) => {
    const { length } = str;
    if(num > length){
        return '';
    };
    const newStr = str.substr(num, length - num);
    return newStr;
};

console.log(removeN(mobileNumber, 3));
console.log(removeN(secondNumber, 2));

코드 설명

removeN 함수는 화살표 함수로 정의되었으며, 먼저 구조 분해 할당을 통해 문자열의 길이를 추출합니다. 제거할 개수가 문자열 길이보다 크면 빈 문자열을 반환하고, 그렇지 않으면 substr(num, length - num)으로 인덱스 num부터 나머지 전체 문자열을 잘라냅니다.

실행 결과

콘솔에 출력된 결과는 다음과 같습니다.

5389534759385
98345985734

첫 번째 호출에서는 국가 코드 "+91"(3자리)가 제거되었고, 두 번째 호출에서는 "+1"(2자리)이 제거된 것을 확인할 수 있습니다. 이처럼 전화번호에서 국가 코드를 제거하는 등의 실무 상황에서 유용하게 활용할 수 있습니다.