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

JavaScript로 문장에서 뒤에서 두 번째 단어의 길이 구하기

문장(sentence)이란 공백으로 구분된 여러 단어들이 하나로 연결된 문자열을 의미합니다. 이번 글에서는 문장 문자열을 입력받아 뒤에서 두 번째 단어의 글자 수를 세는 JavaScript 함수를 작성해 보겠습니다. 만약 문자열에 포함된 단어가 2개 이하라면 함수는 0을 반환하도록 처리합니다.

문제 이해하기

예를 들어, 입력 문자열이 다음과 같다고 가정해 보겠습니다.

const str = 'this is an example string';

이 경우 기대되는 출력값은 다음과 같습니다.

const output = 7;

'example'이라는 단어가 정확히 7개의 문자로 이루어져 있기 때문입니다.

구현 방법

핵심 아이디어는 간단합니다. split(' ') 메서드로 문장을 단어 배열로 나눈 뒤, 배열의 길이를 확인하고 뒤에서 두 번째 요소의 길이를 반환하면 됩니다.

코드는 다음과 같습니다.

const str = 'this is an example string';
const countSecondLast = (str = '') => {
    const strArr = str.split(' ');
    const { length: len } = strArr;
    if(len <= 2){
        return 0;
    };
    const el = strArr[len - 2];
    const { length } = el;
    return length;
};
console.log(countSecondLast(str));

코드 설명

str.split(' ')은 공백을 기준으로 문자열을 잘라 단어 배열을 생성합니다. 배열의 길이가 2 이하이면 뒤에서 두 번째 단어가 존재하지 않으므로 0을 반환하고, 그렇지 않은 경우 인덱스 len - 2에 해당하는 단어의 길이를 그대로 반환합니다.

실행 결과

위 코드를 실행하면 콘솔에 다음과 같은 결과가 출력됩니다.

7