Это:
class Test {
toString() {
return "This is a test object";
}
}
строго не определяет метод объекта .Скорее, он определяет методы класса.
Вам необходимо прикрепить методы непосредственно к объекту как «собственные свойства», чтобы разброс копировал их:
class Test {
constructor() {
// define toString as a method attached directly to
// the object
this.toString = function() {
return "This is a test object";
}
}
}
let test = new Test();
let test2 = { ...test };
console.log(String(test));
console.log(String(test2));