Destrutturazioni tramite elementi rest

function removeFirstTwo(list) {
// Only change code below this line
const [a, b, …shorterList] = list; // Change this line
// Only change code above this line
return shorterList;
}

const source = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
const sourceWithoutFirstTwo = removeFirstTwo(source);

ho capito che l’elemento rest toglie gli argomenti non asseganti e li assegna ad un’altra variabile e fin qui ci siamo ma non ho capito l’inizializasione della constante source e delle altre due appena sotto che assengna l’una all’altra, non ho capito l’utilita anche se solo hai fini didattici. c’e qualcquano per cortesia che puo darmi una spiegazione dettagliata?
grazie

source è un array usato come esempio.
la funzione removeFirstTwo è chiamata con source come argomento, e l’output è un altro array, che è quasi uguale a source ma mancano i primi due elementi dell’array. Così hai un esempio con una funzione che viene eseguita di rest.
Sono lì per avere la funzione eseguita con un argomento, come esempio.