Rest parameters (...args) thu thập tất cả tham số còn lại thành Array thực sự: function sum(...nums) { return nums.reduce((a, b) => a + b, 0); }.
- Khác
argumentsobject ở 3 điểm: rest là Array thật (cómap,filter...) trong khi arguments chỉ là array-like; rest chỉ chứa các params chưa được đặt tên, còn arguments chứa tất cả; arrow functions không cóargumentsnhưng có rest params. - Bẫy: rest param phải là tham số cuối cùng —
(a, ...rest, b)là syntax error.