การใช้งาน spread ใน JavaScript

สมมติว่าเรามีฟังก์ชันที่มีพารามิเตอร์5ตัว ดังนี้:

javascriptfunction func(num1, num2, num3, num4, num5) {
  return num1 + num2 + num3 + num4 + num5;
}

เราสามารถใช้spreadส่ง อาร์เรย์เดียวเข้าไปในฟังก์ชันนี้ได้:

javascriptfunc(...[1, 2, 3, 4, 5]);

แต่ไม่จำเป็นต้องทำแบบนั้นเสมอไป!

สามารถส่งอาร์เรย์สองตัวก็ได้:

javascriptfunc(...[1, 2], ...[3, 4, 5]);

สามารถส่งพารามิเตอร์บางส่วนด้วยวิธีปกติ และบางส่วนด้วยการใช้ spread:

javascriptfunc(1, 2, ...[3, 4, 5]);

หรือแบบนี้:

javascriptfunc(1, ...[2, 3, 4], 5);
Задание 1

โดยไม่ต้องรันโค้ด จงหาว่าอะไรจะถูกแสดงผล ในคอนโซล:

javascriptfunction func(n1, n2, n3, n4, n5, n6, n7, n8) {
  return (n1 + n2 + n3 + n4) * (n5 + n6 + n7 + n8);
}

console.log( func(1, ...[2, 3, 4], 5, ...[6], ...[7, 8]) );