#Make changes to arrays without mutating them:
var arr = [1, 2, 3];
var index = 1;####Mutable:
arr.push(4)
console.log(arr) // arr = [1,2,3,4]####Immutable solution:
console.log(
arr.concat([4])
);
// [1,2,3,4]console.log(
[...arr,4]
);
// [1,2,3,4]####Mutable:
arr.splice(1,1);
console.log(arr) // arr = [1,3]#####Immutable solution:
console.log(
arr.slice(0,index).concat(arr.slice(index+1))
);
// [1,3]console.log(
[...arr.slice(0,index), ...list.slice(index+1)]
);
// [1,3]console.log(
arr[index]++
);
// [1,3,3]#####Immutable solution:
console.log(
arr.slice(0, index).concat([arr[index]+1]).concat(arr.slice(index+1))
);
// [1,3,3]console.log(
[...arr.slice(0, index), arr[index]+1, ...arr.slice(index+1)]
);
// [1,3,3]