FRONT/JAVASCRIPT

[Javascript] 알고리즘 기본 문제 - 가운데 문자 출력

연듀 2022. 3. 26. 10:35

15.가운데 문자 출력

 

내 풀이

function solution(s) {
  let answer = "";

  for (let i = 0; i < s.length; i++) {
    if (s.length % 2 === 0) {
      if (i === Math.ceil(s.length / 2) - 1 || i === Math.ceil(s.length / 2))
        answer += s[i];
    } else {
      if (i === Math.ceil(s.length / 2) - 1) answer += s[i];
    }
  }
  return answer;
}

let str = "good";
console.log(solution(str));

 

강사님 풀이

function solution(s) {
  let answer = "";

  let mid = Math.floor(s.length / 2);
  if (s.length / 2 == 1) answer = s.substring(mid, mid + 1);
  // s.substr(mid, 1)
  else answer = s.substring(mid - 1, mid + 1);
  // s.substr(mid-1,2)
  return answer;
}

let str = "good";
console.log(solution(str));

substring 이나 substr을 쓰면 훨씬 간편하다.