문제
소문자로 된 단어(문자열)가 입력되면 그 단어의 가운데 문자를 출력하는 프로그램을 작성하세 요. 단 단어의 길이가 짝수일 경우 가운데 2개의 문자를 출력합니다.
내가 푼 방법
<html>
<head>
<meta charset="UTF-8" />
<title>출력결과</title>
</head>
<body>
<script>
function solution(s) {
let answer = "";
let arr = s.split("");
if (arr.length % 2 === 0) {
idx = parseInt(arr.length / 2);
answer = arr[idx - 1] + arr[idx];
} else {
idx = parseInt(arr.length / 2);
answer = arr[idx];
}
return answer;
}
console.log(solution("study"));
</script>
</body>
</html>
다른 풀이
<html>
<head>
<meta charset="UTF-8" />
<title>출력결과</title>
</head>
<body>
<script>
function solution(s) {
let answer = "";
let mid = Math.floor(s.length / 2);
if (s.length % 2 === 1) answer = s.substring(mid, mid + 1);
else answer = s.substring(mid - 1, mid + 1);
return answer;
}
console.log(solution("good"));
</script>
</body>
</html>
✅ substring
String.prototype.substring()
위 메소드는 string 객체의 시작 인덱스로 부터 종료 인덱스 전 까지 문자열의 부분 문자열을 반환합니다.
'Javascript 코테준비 > 섹션1' 카테고리의 다른 글
17. 중복 단어 제거 (0) | 2022.09.10 |
---|---|
16. 중복문자제거 (1) | 2022.09.10 |
14. 가장 긴 문자열 (0) | 2022.09.10 |
13. 대소문자 변환 (0) | 2022.09.10 |
12. 대문자로 통일 (0) | 2022.09.09 |