🐸 문제 설명
함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요.
🐸 제한 조건
- x는 -10000000 이상, 10000000 이하인 정수입니다.
- n은 1000 이하인 자연수입니다.
🐸 입출력 예
x | n | answer |
2 | 5 | [2,4,6,8,10] |
4 | 3 | [4,8,12] |
-4 | 2 | [-4, -8] |
🐸 나의 문제 풀이
function solution(x, n) {
var answer = [];
for (let i = 1; i <= n; i++) {
answer.push(x * i);
}
return answer;
}
x씩 증가 => 즉, x의 배수들로 구성된 배열!
🐸 다른사람 문제 풀이
1)
function solution(x, n) {
return Array(n).fill(x).map((v, i) => (i + 1) * v)
}
n 크기의 배열을 만들고, x로 이 배열을 채운 뒤, 배열의 각 요소에 콜백 함수를 실행하는 .map을 이용
map을 사용할 때 2개의 input 값을 사용하게 되면 2번째 input 값은 배열의 index의 값을 의미함
2)
function solution(x, n) {
return [...Array(n).keys()].map(v => (v + 1) * x);
}
Array를 통해 n의 수만큼 Spread 문법으로 null 값으로 채워 넣게 되고 keys 매서드를 사용하면 null이 0부터 차례대로 자연수가 채워짐. 이후 map을 사용하여 각각의 값을 곱해주면 됨!
🐸 메소드
더보기
arr.fill(value[, start[, end]])
- fill() : 배열의 start index부터 end index 전까지(end index는 미포함) value값으로 채워주는 함수
- value: 배열에 채울 값을 지정
- start: value 값을 채울 배열의 시작 index(default: 0)
- end: value 값을 채울 배열의 종료 index(default: 배열의 길이)
arr.keys()
- key(): 배열의 각 인덱스를 키 값으로 가지는 새로운 Array Iterator 객체를 반환하는 함수
- 즉, 어떠한 배열의 값이라도 0부터 차례대로 숫자를 대입하는 메서드
'자바스크립트(javascript)' 카테고리의 다른 글
기본형 데이터와 참조형 데이터 - 불변성, 가변성 (0) | 2023.04.13 |
---|---|
[Javascript]배열 정렬 함수 sort(오름차순, 내림차순, 문자열 정렬, 숫자 정렬, 객체 정렬) (0) | 2023.04.08 |
댓글