Spread разворачивает элементы или свойства, а rest собирает оставшиеся значения; одинаковые три точки имеют разный смысл в разных позициях.
Что такое операторы spread и rest, как они используются?
Spread разворачивает элементы или свойства, а rest собирает оставшиеся значения; одинаковые три точки имеют разный смысл в разных позициях.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Spread разворачивает элементы или свойства, а rest собирает оставшиеся значения; одинаковые три точки имеют разный смысл в разных позициях.
[...items] и {...obj} создают поверхностные копии, а function f(...args) собирает аргументы в массив. В деструктуризации const {id, ...rest} = obj собирает оставшиеся собственные перечисляемые свойства. Вложенные объекты при spread не клонируются глубоко.