본문 바로가기

프로그래밍 공부/프로그래머스 코딩테스트

[프로그래머스] 자바스크립트 LV1 가운데 글자 가져오기

가운데 글자 가져오기
문제 설명

단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.

재한사항
  • s는 길이가 1 이상, 100이하인 스트링입니다.

더보기
1
2
3
4
5
6
7
8
9
10
function solution(s) {
    let answer = '';
    if(s.length %2 === 0){
        answer=s.charAt(s.length/2-1);
        answer+=s.charAt(s.length/2);
    }else{
        answer=s.charAt(s.length/2);
    }
    return answer;
}
cs

문자열의 문자 갯수가 짝수일 때와 홀수 일 때의 반환해야하는 문자가 다르다. 따라서 조건문을 이용해 문자열 s의 길이가 짝수일 때와 홀수일 때의 반환 조건을 설정해주고 charAt(문자가 있는 위치)을 이용해 문자를 골라 내게 만든다.

문자열 s의 길이가 %2배수로 나누어 몫이 0이 되면 짝수라는 의미이고 반환해야 하는 문자는 반으로 나누고 나눈 첫 문자열의 맨 뒤와 두번째 문자열의 맨 앞이다. 첫 문자열의 맨뒤는 s.charAt(s.length/2-1) 번째이고 두 번째 문자열의 맨앞은 그냥 s.charAt(s.length/2)이다. 그리고 이 둘을 합쳐서 반환 하면 된다. 홀수는 그냥 반으로 나눈 부분을 반환하게 만들면 된다.