В приведенном ниже классе для конструктора используется параметр
{cabinet = 'spruce', distortion = '1', volume = '0'} = {}
class GuitarAmp {
constructor ({ cabinet = 'spruce', distortion = '1', volume = '0' } = {}) {
Object.assign(this, {
cabinet, distortion, volume
});
}
}
Обычно аргумент передается конструктору, я не понимаю, почему здесь присутствует присваивание.
Взят код от здесь