Slice and Splice - HELP

can anybody explain this code to me, please

Your code so far

function frankenSplice(arr1, arr2, n) {
  // It's alive. It's alive!
  let arr = arr2.slice()
  arr.splice(n, 0, ...arr1)
  return arr;


frankenSplice([1, 2, 3], [4, 5, 6], 1);

Your browser information:

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

Link to the challenge:

Create a copy of arr2

Use splice at index n, remove 0 elements and add in the content of arr1 (splice changes the array on which it is used and return the removed elements)

Return the array called arr