본문 바로가기

Algorithm/level1

[프로그래머스] 가운데 글자 가져오기 (Javascript)

문제 설명

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

제한사항

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

입출력 예

s return
"abcde" "c"
"qwer" "we"

 


나의 풀이

function solution(s) {
    let answer = '';
    const sList = s.split('');
    const sListLength = sList.length;
    
    sListLength % 2 ? 
        answer = sList[Math.floor(sListLength/2)] : 
        answer = sList[sListLength/2 - 1] + sList[sListLength/2];
    
    return answer;
}
  1. 입력값을 문자마다 나눠 배열로 변환한 변수 sList를 생성한다.
  2. sList배열의 길이를 저장한 변수 sListLength를 생성한다.
  3. sListLength가 홀수인 경우 나누어 떨어지지 않으므로 sListLength에 2를 나눈값에 소수점을 제외한 수를 sList 인덱스 위치로 주어 해당하는 문자를 anwer변수에 저장한다.
  4. sListLength가 짝수인 경우 나누어 떨어지므로 중간 위치인 sListLength/2 -1 와 sListLength/2를 sList 인덱스 위치로 주어 문자를 answer변수에 저장한다.