728x90
반응형
문제 설명
단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.
제한사항- s는 길이가 1 이상, 100이하인 스트링입니다.
s | return |
"abcde" | "c" |
"qwer" | "we" |
다른 사람 풀이
function solution(s){return s.substr(Math.ceil(s.length/2)-1, s.length % 2 === 0 ? 2:1);}
간결하고 깔끔한 풀이이다. substr 메서드는 문자열에서 특정 위치에서 시작하여 특정 문자 수만큼 문자들을 반환하는 메서드이다. 배열의 splice 메서드와 파라미터와 반환값이 유사하다.
내 풀이
1. charAt(), substring()으로 풀이하기
function solution(s) {
let answer, mid;
if(s.length % 2 == 1){ //홀수
mid = parseInt(s.length/2);
answer = s.charAt(mid);
} else { //짝수
mid = parseInt(s.length/2 -1);
answer = s.substring(mid,mid+2);
}
return answer;
}
2. substr()로 풀이하기
function solution(s) {
let answer, mid;
if(s.length % 2 == 1){ //홀수
mid = parseInt(s.length/2);
answer = s.substr(mid,1);
} else { //짝수
mid = parseInt(s.length/2 -1);
answer = s.substr(mid,2);
}
return answer;
}
👀 참고
메서드 | 참고 MDN 링크 |
substr(시작인덱스, 반환할 문자 개수) | https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/substr |
substring(시작인덱스, 종료인덱스+1) | https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/substring |
charAt(인덱스) | https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/charAt |
728x90
반응형
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[lv.1] 없는 숫자 더하기 (0) | 2022.05.14 |
---|---|
[lv.1] 두 정수 사이의 합 (0) | 2022.05.14 |
[lv.1] 문자열을 정수로 바꾸기 (0) | 2022.05.13 |
[lv.1] 짝수와 홀수 (0) | 2022.05.13 |
[lv.1] 직사각형 별찍기 (0) | 2022.05.13 |