Предположим, что у нас есть массив объектов.
Вызов Object.assign(...array)
делает наследование среди тех объектов, где объект с индексом i
переопределяет существующие свойства в объекте с индексом i-1
Например:
var array=[{interf:'IPerson',name:'Someone'},{clss:'Person',name:'Ahmed'},{student:true}];
console.log(
Object.assign(...array) // Object.assign(array[0],array[1],array[2])
)