1. 문제 설명
2. 내 답변
function solution(arr, flag) {
var answer = [];
for (let i = 0; i < flag.length; i++){
if (flag[i] === true){
answer.push(...Array(arr[i]*2).fill(arr[i]))
}else{
answer.splice(answer.length - arr[i], arr[i])
}
}
return answer;
}
이중for문을 사용해서 풀려고 했는데 왜인지 모르게 계속 에러가 떠서 구글링..
다른 사람 답변에도 이중for문 사용한 사람 많던데 왜 에러가 떴을까.. ㅠㅠ
그래도 덕분에 Array를 배워간다!
3. Array()
Array() 생성자는 새로운 Array 객체를 생성할 때 사용.
Array()안에는 배열의 길이가 들어간다. Array(arr[i]*2)를 통해서 arr[i]*2만큼의 길이를 가진 배열을 생성할 수 있다.
4. fill()
arr.fill(value[, start[, end]])
- 배열의 start index부터 end index 전까지(end index는 미포함) value 값으로 채워주는 함수
'JAVASCRIPT > 코딩테스트' 카테고리의 다른 글
[프로그래머스] 0단계 - 그림확대 (0) | 2024.01.14 |
---|---|
[프로그래머스] 0단계 - 배열의 길이를 2의 거듭제곱으로 만들기 (0) | 2024.01.12 |
[프로그래머스] 0단계 - 무작위로 k개의 수 뽑기 (0) | 2024.01.11 |
[프로그래머스] 0단계 - 문자열이 몇 번 등장하는지 세기 (0) | 2024.01.07 |
[프로그래머스] 0단계 - 조건에 맞게 수열 변환하기 2 (0) | 2024.01.05 |