수(num)와 배열을 입력받아 차례대로 num개의 요소만 포함된 새로운 배열을 리턴해야 합니다.
let output = take(2, [1, -2, 1, 3]);
console.log(output); // --> [1, -2]
output = take(5, [1, -2, 1, 3]);
console.log(output); // --> [1, -2, 1, 3]
function take(num, arr) {
// TODO: 여기에 코드를 작성합니다.
let newArr =[];
if(num>arr.length){
return arr;
}
if (num===0){
return newArr;
}
else{
const n= n+1;
return take(num-1, newArr.push(arr[n]))
}
}
function take(num, arr) { // take(2, [1, -2, 1, 3]); 라면
// if (num >= arr.length) {
// return arr;
// }
if (num === 0 || arr.length === 0) {
return [];
}
// const [head, ...tail] = arr;
const head = arr[0]; // head = arr[0]= 1
const tail = arr.slice(1); // tail = arr.slice(1) = [-2, 1, 3]
return [head].concat(take(num - 1, tail)); // [1].concat(take(2-1, [-2, 1, 3]))
} // take(1, [-2, 1, 3]);
// head = arr[0] = -2;
// tail = [1, 3]
// [-2].concat(take(1-1, [1,3]))
concat의 사용법