JavaScript · Middle · Запитання 62 з 75
Чим Object.assign(target, source) відрізняється від { ...target, ...source }?
- ✓Правильна відповідь:
Object.assignмутуєtarget(і викликає його сетери); spread створює новий об'єкт - 2Spread копіює глибоко,
Object.assign- поверхнево - 3Вони ідентичні
Пояснення
Обидва поверхневі й копіюють лише власні перелічувані властивості. Якщо потрібен новий об'єкт зі старим API, використовуйте Object.assign({}, a, b).