The slice() method returns a portion without modifying the original:
let arr = [1, 2, 3, 4, 5]
console.log(arr.slice(1, 4)) // [2, 3, 4]
console.log(arr.slice(2)) // [3, 4, 5]
console.log(arr.slice(-2)) // [4, 5]
console.log(arr) // [1, 2, 3, 4, 5] (unchanged)
Unlike splice(), slice() doesn't modify the original. Use it to copy arrays: arr.slice() returns a shallow copy.