프로그래머스 가운데 글자 가져오기 자바스크립트
2022. 1. 15. 12:21ㆍ코딩공부/JavaScript 알고리즘
문제
초기 코드
function solution(s) {
var answer = '';
return answer;
}
문제 풀이
function solution(s) {
var answer = '';
if(s.length % 2 ===0){ // s의 길이가 짝수일때
answer = answer.concat(s[s.length/2 -1])
answer = answer.concat(s[s.length/2]);
// concat() 함수로 가운데 문자를 배열로 리턴해준다
// 리턴한다.
}else{
answer = answer.concat(s[Math.floor(s.length/2)]);
// 연산 결과가 소수점이 있으니까 Math.floor()함수를 사용하여 소수점 이하를 버림한다
}
return answer;
}
console.log(solution("abcdefg")); //d
console.log(solution("abcdefgh")); //de
다른 풀이
const solution = s => {
return s.length % 2 ?
s[parseInt(s.length/2)] :
s.substr(s.length/2-1, 2);
}
문법 정리
1. concat() 함수
array.concat([value1[, value2[, ...[, valueN]]]])
concat() 함수는 파라미터로 받은 배열이나 값들을 기존의 배열에 합쳐서, 새로운 배열을 만들어서 리턴한다.
https://hianna.tistory.com/397
2. Math.floor() 함수
Math.floor() : 소수점 이하를 버림한다.
Math.ceil() : 소수점 이하를 올림한다.
Math.round() : 소수점 이하를 반올림한다.
3. .substr() 함수
문자열 자르기 함수
- substr("시작위치", "길이") 또는 substr("시작 위치")
시작 위치부터 해당 길이만큼 문자열을 잘라준다. 길이를 생략하면 시작위치부터 문자열 끝까지 자른다.
- substring("시작위치", "종료위치") 또는 substring("시작 위치")
시작 위치에서 종료위치까지 문자열을 자른다. 주의할 점은 종료 위치의 -1까지 문자열을 자른다.
- slice("시작위치","종료위치") 또는 slice("시작위치")
기본적인 사용법은 substring() 함수와 동일하며, 다른 점은 음수를 자유롭게 사용할 수 있어서 뒤에서부터 문자열을 자를때 유용하게 사용할 수 있다.
'코딩공부 > JavaScript 알고리즘' 카테고리의 다른 글
프로그래머스 행렬의 덧셈 자바스크립트 (0) | 2022.01.17 |
---|---|
프로그래머스 핸드폰 번호 가리기 자바스크립트 (0) | 2022.01.15 |
프로그래머스 문자열을 정수로 바꾸기 자바스크립트 (0) | 2022.01.15 |
프로그래머스 짝수와 홀수 자바스크립트 (0) | 2022.01.14 |
프로그래머스 직사각형 별찍기 자바스크립트 (0) | 2022.01.14 |