접두사인지 확인하기

어떤 문자열에 대해서 접두사는 특정 인덱스까지의 문자열을 의미합니다. 예를 들어, "banana"의 모든 접두사는 "b", "ba", "ban", "bana", "banan", "banana"입니다. 문자열 my_string과 is_prefix가 주어질 때, is_prefix가 my_string의 접두사라면 1을, 아니면 0을 return 하는 solution 함수를 작성해 주세요.

접두사인지 확인하기Lv.0

181906

https://school.programmers.co.kr/learn/courses/30/lessons/181946?language=javascript

해설

주어진 my_string이라는 문자열과 is_prefix라는 문자열이 주어졌을 때, is_prefix가 my_string의 접두사인 경우 1을 반환하고, 그렇지 않은 경우 0을 반환합니다.

  • Name
    반복문을 사용
    Type
    Description

    반복문을 사용하여 is_prefix의 각 문자와 my_string의 각 문자를 비교합니다.

  • Name
    길이 비교
    Type
    Description

    is_prefix의 길이가 my_string의 길이보다 길거나, 현재 인덱스의 문자가 서로 다르다면, is_prefix가 my_string의 접두사가 아니므로 0을 반환합니다.

  • Name
    조건을 통과
    Type
    Description

    조건을 통과하면, is_prefix가 my_string의 접두사이므로 1을 반환합니다.

주된 목적은 두 문자열 간의 접두사 여부를 판별하는 것이며, 위에서 언급한 예외 상황들을 처리하여 더 정확한 결과를 반환하도록 작성하였습니다.

접두사인지 확인하기

function solution(my_string, is_prefix) {
    for (let i = 0; i < is_prefix.length; i++) {
        if (my_string.length < is_prefix.length || my_string[i] !== is_prefix[i]) {
            return 0;
        }
    }

    return 1;
}