Ο Τελεστής spread και η Συγχώνευση Πινάκων

Ας υποθέσουμε ότι έχουμε δύο πίνακες:

javascriptlet arr1 = ['a', 'b', 'c'];
let arr2 = [1, 2, 3];

Ας κάνουμε έτσι ώστε μεταξύ του πρώτου και του δεύτερου στοιχείου του πίνακα arr2 να εισαχθούν τα στοιχεία του πίνακα arr1.

Με άλλα λόγια, θέλουμε να γράψουμε κώδικα, ο οποίος από τον τρέχοντα πίνακα arr2 θα δημιουργήσει τον ακόλουθο πίνακα:

javascript[1, 'a', 'b', 'c', 2, 3]

Το πρόβλημα, γενικά, είναι επιλύσιμο μέσω της μεθόδου splice. Ωστόσο, το πρόβλημα αυτό λύνεται πολύ πιο εύκολα μέσω του spread:

javascriptlet arr1 = ['a', 'b', 'c'];
let arr2 = [1, ...arr1, 2, 3];

console.log(arr2); // θα εμφανίσει [1, 'a', 'b', 'c', 2, 3]
Задание 1

Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην κονσόλα:

javascriptlet arr1 = [1, 2, 3];
let arr2 = [4, 5, 6];

let arr  = ['a', ...arr1, 'b', 'c', ...arr2];
console.log(arr);
Задание 2

Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην κονσόλα:

javascriptlet arr1 = [1, 2, 3];
let arr2 = [4, 5, 6];

let arr  = ['a', ...arr1, ...arr1, 'b', 'c'];
console.log(arr);
Задание 3

Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην κονσόλα:

javascriptlet arr1 = [1, 2, 3];
let arr2 = [...arr1, 4, 5, 6];

let arr  = ['a', 'b', 'c', ...arr2];
console.log(arr);
Задание 4

Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην κονσόλα:

javascriptlet arr1 = [1, 2, 3];
let arr2 = [...arr1, 4, 5, 6];
let arr3 = [...arr2, 7, 8, 9];

let arr  = [0, ...arr3];
console.log(arr);
Задание 5

Χωρίς να εκτελέσετε τον κώδικα, προσδιορίστε τι θα εμφανιστεί στην κονσόλα:

javascriptlet arr1 = [1, 2, 3];
let arr2 = [...arr1];

console.log(arr2);