티스토리 뷰
Link: https://programmers.co.kr/learn/courses/30/lessons/12903
// 문제 설명
// 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.
// 재한사항
// s는 길이가 1 이상, 100이하인 스트링입니다.
// 입출력 예
// s return
// "abcde" "c"
// "qwer" "we"
// 문자열의 문자 개수 세기
// 조건문
// 문자의 개수가 짝수라면 (문자 개수/2)-1 번째와 (문자 개수/2 + 1) 번째의 문자 반환
// 문자의 개수가 홀수라면 문자 개수/2의 반내림 정수 번째의 문자 반환
function solution(text) {
let cnt = text.length;
let index = cnt/2;
if (cnt % 2 == 0) {
result = text.slice(index-1, index+1);
} else {
result = text.charAt(Math.floor(cnt/2));
}
return result;
};
function solution(text) {
let cnt = text.length;
let index = cnt/2;
if (cnt % 2 == 0) {
return text.slice(index-1, index+1);
} else {
return text.charAt(Math.floor(cnt/2));
}
};
function solution(text) {
let cnt = text.length;
let index = cnt/2;
return cnt % 2 == 0 ? text.slice(index-1, index+1) : text.charAt(Math.floor(cnt/2))
}
.slice(index) 메소드 (substring과의 차이 확인)
- 형태: Array.slice(begin, end)
begin (optional)
- 0을 시작으로 하는 추출 시작점에 대한 인덱스
- 음수 인덱스 (ex. -2) 는 배열의 끝에서부터의 길이를 의미
- begin 이 undefined인 경우, 0번 인덱스부터 추출
- begin이 배열의 길이보다 큰 경우, 빈 배열을 반환
end (optional)
- 추출을 종료할 0기준 인덱스로, end index를 제외하고 추출
- ex. arr.slice(1, 5) → 배열의 두 번째(index 1)부터 다섯 번째(index 4)까지 추출
- 마찬가지로 음수 인덱스는 배열의 끝에서부터의 길이를 나타냄
- ex. arr.slice(1, -3) → 배열의 두 번째(index 1)부터 끝에서 네 번째 요소까지 추출
- end 가 생략되면 배열의 끝까지 추출
- end 값이 배열의 길이보다 큰 경우에도 배열의 끝까지 추출
.charAt(index) 메소드
- 문자열에서 특정 인덱스에 위치하는 유니코드 단일문자 반환
- 매개변수 index → 0과 문자열의 길이의 -1 사이의 정수값
- index가 문자열의 길이보다 큰 경우 빈 문자열에 '' 반환
- index를 제공하지 않으면 default → 0
.Math 메소드
- .Math.floor() → 소수점 이하 버림
- .Math.cell() → 소수점 이하 올림
- .Math.round() → 소수점 이하 반올림
'Algorithms' 카테고리의 다른 글
[Algorithms] 프로그래머스 - 음양 더하기 (0) | 2021.11.09 |
---|---|
[Algorithms] 프로그래머스 - 없는 숫자 더하기 (0) | 2021.11.09 |
[Algorithms] 프로그래머스 - 문자열을 정수로 바꾸기 (0) | 2021.11.09 |
[Algorithms] 프로그래머스 - 두 정수 사이의 합 (0) | 2021.11.09 |
[Algorithms] 프로그래머스 - 짝수와 홀수 (0) | 2021.11.09 |