Вот несколько методов JavaScript, связанных с заимствованием объектов и манипулированием ими:
Object.assign(target,...sources): копирует значения всех перечислимых свойств из одного или нескольких исходных объектов в целевой объект.Object.create(proto, [propertiesObject]): создает новый объект с указанным объектом-прототипом и дополнительными свойствами.Object.setPrototypeOf(obj, Prototype): устанавливает прототип (т. е. внутреннее свойство[[Prototype]]) объекта.Function.prototype.call(thisArg,...args): вызывает функцию и устанавливает значениеthisдля предоставленного объекта (thisArg), а также передачу любых дополнительных аргументов.Function.prototype.apply(thisArg, argsArray): вызывает функцию и устанавливает значениеthisдля предоставленного объекта (thisArg)., а также передавая в качестве аргументов объект, подобный массиву (argsArray).Function.prototype.bind(thisArg,...args): создает новую функцию, при вызове которой значениеthisустанавливается на предоставленный объект (thisArg), а также заранее определенные аргументы.Array.prototype.slice(start, end): возвращает неполную копию части массива отstartдоend( конец не включен).