개발일기

[JavaSciprt] 잘라서 배열로 저장하기 본문

Algorithm

[JavaSciprt] 잘라서 배열로 저장하기

황대성 2024. 7. 15. 01:28
문제 설명

 

문자열 my_str과 n이 매개변수로 주어질 때, my_str을 길이 n씩 잘라서 저장한 배열을 return하도록 solution 함수를 완성해주세요.

 

제한사항

 

  • 1 ≤ my_str의 길이 ≤ 100
  • 1 ≤ n ≤ my_str의 길이
  • my_str은 알파벳 소문자, 대문자, 숫자로 이루어져 있습니다.

 

입출력 예

 

my_str n result
"abc1Addfggg4556b" 6 ["abc1Ad", "dfggg4", "556b"]
"abcdef123" 3 ["abc", "def", "123"]

 

풀이
function solution(my_str, n) {
    var answer = []
    for(let i = 0; i<my_str.length; i+=n){
        answer.push(my_str.slice(i,n+i))
    }
    return answer;
}

 

풀이 설명

 

1. 주어진 str 문자열을 잘라서 배열에 저장해야 하기 때문에 slice() 메서드와 push() 메서드를 활용해야 한다. 하지만 slice()에서 start 값과 end 값이 계속해서 바뀌어야 하기 때문에 for문을 활용한다.

2. for문의 i 는 0부터 my_str의 길이까지 이고 i는 n의 값만큼 추가된다.

3. 위에처럼 for문을 설정하면 slice()에서 활용할 수 있는데 예제 1을 예로들면 slice()의 start값과 end값은 각각 0~6,6~12,12~마지막 까지 필요한데 i, n+i를 해준다면 값을 구할 수 있다. 잘라준 값을 push()로 answer 배열에 담고 리턴한다.

'Algorithm' 카테고리의 다른 글

[JavaScript] 컨트롤 제트  (5) 2024.07.15
[Javascript] 소인수분해  (1) 2024.07.15
[JavaScript] k의 개수  (0) 2024.07.11
[JavaScript] 7의 개수  (0) 2024.07.11
[JavaScript] 한 번만 등장한 문자  (0) 2024.07.09