Junior #es6#destructuring#spread
Destructuring, spread và rest operator khác nhau thế nào?
⚡ Trả lời nhanh
Destructuring bóc giá trị từ array/object vào biến (hỗ trợ default, đổi tên). Spread `...x` mở rộng iterable/object thành phần tử rời; rest `...x` ở vế nhận gom phần còn lại thành array/object. Spread chỉ copy nông (shallow).
Ví dụ
main.js · sửa được
- Rest xuất hiện ở vế nhận (tham số hàm, destructuring) và phải đứng cuối.
- Spread xuất hiện ở vế cung cấp (gọi hàm, literal mảng/object). Với object, key sau ghi đè key trước:
{...defaults, ...overrides}.