I declare: let newArray = arr2;
then I make changes to newArray: newArray.splice(n, 0, ...arr1);
But arr2
ends up changing. Why?
Your code so far
function frankenSplice(arr1, arr2, n) {
// It's alive. It's alive!
let newArray = arr2;
console.log("before", arr2);
newArray.splice(n, 0, ...arr1);
console.log("after", arr2);
console.log(arr1, arr2, newArray);
return newArray;
}
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/67.0.3396.87 Safari/537.36
.
Link to the challenge:
https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/basic-algorithm-scripting/slice-and-splice