Copy an Array with the Spread Operator -- help [SOLVED]

Tell us what’s happening:

I checked the console, it adds the repetition into a single array but I obviously want it to spread into num of arrays. How do I do that?
Your code so far


function copyMachine(arr, num) {
  let newArr = [];
  while (num >= 1) {
    // change code below this line
newArr.push(...arr);
    // change code above this line
    num--;
  }
  return newArr;
}

// change code here to test different cases:
console.log(copyMachine([true, false, true], 2));

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36.

Link to the challenge:
https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/basic-data-structures/copy-an-array-with-the-spread-operator

let oneTwoThree = [1, 2, 3];

Exactly. Why not spread the contents of arr and put that inside a literal array to be pushed to newArr?

By literal array you mean empty square brackets? so newArr.push([...arr])?

Thanks, it worked, but I still am not clear as to what have I done. Did I ask JavaScript to essentially repeat it num of times but partition the repetition into sub-arrays? Cause that was the only difference between my initial code and the solution code.

Thanks, that explains it.

hi, is this correct?

newArr.splice(1, 0,[…arr]);