Javascript 从祖先克隆对象

Javascript 从祖先克隆对象,javascript,clone,Javascript,Clone,在Javascript(ES6)中,我定义了一个继承类的树: class A { constructor () { (...) } } class B extends A { constructor () { (...) super(); } } class C extends B { constructor () { (...) super(); } } 等等(a类D也扩展了B类,等等) 现在,在A中,我想编写一个函数res

在Javascript(ES6)中,我定义了一个继承类的树:

class A {
  constructor () {
    (...)
  }
}

class B extends A {
  constructor () {
    (...)
    super();
  }
}

class C extends B {
  constructor () {
    (...)
    super();
  }
}
等等(a类D也扩展了B类,等等)

现在,在
A
中,我想编写一个函数
resolve
,该函数克隆当前对象并仅更改其部分字段

class A {
  (...)
  resolve() {
    // I want to clone this
    const newClass = ???
  }
}
是否可以从中获取嵌套的继承构造函数?
例如,如果我是
C
,是否可以从
resolve
创建新的
C


否则,是否可以克隆
,所有函数都是继承类中定义的属性?

尝试使用
此构造函数

A类{
foo(){returnnew(this.constructor)}
}
B类扩展了A类{
jj(){console.log('jj')}
}

(新的B.foo().jj()
Hooo,不可能这么容易!谢谢,你让我开心:)