코딩테스트 | (JavaScript) 프로그래머스 : 가운데 글자 가져오기

trevor1107·2021년 8월 25일
0

✅문제

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

❕ 제한사항

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

🎹📢입출력 예제

✍풀어보기

function solution(s) {
    let halfLength = parseInt(s.length / 2);
    return s.length % 2 === 0 ? 
        s[halfLength-1] + s[halfLength] : s[halfLength];
}

그냥 정말 단순하게 가운데 문자를 찾아서 짝수이면 두 문자를 홀수이면 하나의 문자를 리턴해주었다. parseInt() 함수를 통해 형 변환을 하게 되면 숫자가 내림된다.


🎈다른 사람의 풀이

function solution(s) {
    return s.substr(Math.ceil(s.length / 2) - 1, s.length % 2 === 0 ? 2 : 1);
}

Math.ceil()은 수를 올림해준다. Math.ceil(0.9) -> 1, Math.ceil(7.004) -> 8
그래서 -1을 해준 것 같다. 문자열의 길이가 7개라고 하면 3.5 -> 4가 되어버린다. 인덱스로는 3이 맞기 때문에 -1을 해주어야한다. 그리고 2개를 자를건지 1개를 자를건지 짝수 홀수를 판단해서 결과를 내뱉는다.



참고 자료 및 사이트 (감사합니다)

profile
프론트엔드 개발자

0개의 댓글