⚠️ 아래 내용은 모두 개인적인 참고 / 기록을 위한 용도 입니다. 참고해주시고 편안하게 봐주세요 :) ⚠️
[Javascript] 프로그래머스 Level1 _ x만큼 간격이 있는 n개의 숫자
👇🏻문제링크
🔍 무난한 정답
function solution(x, n) {
var answer = [];
for (let i = 1; i <= n; i++) {
answer.push(x*i)
}
return answer;
}
👇🏻
시행착오
( + 코드를 작성하면서든 생각들.)
1.
처음에는 구구단 처럼 값을 인덱스 마다 대입해줬다.
인덱스가 0부터 시작해서 그냥 i+1으로 곱했다,, ㅎ
function solution(x, n) {
var answer = [];
for(let i=0; i<n; i++){
answer[i] = x*(i+1);
}
return answer;
}
2.
배열이 선언된 채 세팅이 되어있기 때문에
반복문을 돌면서 .push()를 사용하는 것으로 수정 해 주었다.
.push() 덕분에 index는 신경쓰지않고 i를 곱하는 것으로 수정했다.
function solution(x, n) {
var answer = [];
for (let i = 1; i <= n; i++) {
answer.push(x*i)
}
return answer;
}
3.
풀이를 보다가 for반복문 없이 함수만으로 풀이한 것이 있길래 정리해봤다!
function solution(x, n) {
return Array(n).fill(x).map((v, i) => v*(i+1));
}
Array(n).fill(x) => x값으로 모두 채워진 길이 n의 배열에
.map((v,i) => v*(i+1)); => map으로 v(currentValue)에 i(index) + 1 을 곱한 결과 배열을 바로 리턴했다.
👇🏻MDN_Array.prototype.map()
'Programmers > Level 1' 카테고리의 다른 글
[Javascript] 프로그래머스 : 짝수와 홀수 (0) | 2021.06.27 |
---|---|
[Javascript] 프로그래머스 : 평균 구하기 (0) | 2021.06.27 |
[Javascript] 프로그래머스 : 핸드폰 번호 가리기 (0) | 2021.06.27 |
[Javascript] 프로그래머스 : 직사각형 별 찍기 (0) | 2021.06.26 |
[Javascript] 프로그래머스 : 완주하지 못한 선수 (0) | 2021.06.26 |