[JS] 문자열 안에 문자열 programmers includes, split

0

코딩테스트

목록 보기
21/80
post-thumbnail

🎀 문제

문자열 str1, str2가 매개변수로 주어집니다. str1 안에 str2가 있다면 1을 없다면 2를 return하도록 solution 함수를 완성해주세요.

function solution(str1, str2) {
    var answer = 0;
    return answer;
}

🎀 내 답변

function solution(str1, str2) {
    return str1.includes(str2) ? 1 : 2;
}

solution("ab6CDE443fgh22iJKlmn1o","6CD");
  1. includes 함수를 사용해서 문자열과 문자열을 대조하여 동일한 값이 있는지 확인한다.
  2. str1 속에 str2가 있다면 1을 반환, 그렇지 않으면 2를 반환한다.

🎀 더 나은 답변

function solution(str1, str2) {
    return str1.split(str2).length > 1 ? 1 : 2
}
  1. str1 문자를 str2로 split 시킨다.
  2. 만약 str1 안에 str2가 존재한다면 str2 문자열을 기준으로 두개로 나뉘어진다.
    ['ab', 'E443fgh22iJKlmn1o']
    위와 같이 str2의 "6CD" 기준으로 두개로 나뉘어져 배열로 지정되었다.
    해당 배열의 length가 2개라면 str1에 str2 문자가 존재하여 split 된 것이므로 1을 반환한다.
  3. 그 외의 경우에는 split될 수 없으니 2를 반환한다.
profile
일단 해. 그리고 잘 되면 잘 된 거, 잘 못되면 그냥 해본 거!

0개의 댓글