function A(){this.a = 5;this.name = 'zz';}const o = create(A)function create() {let obj = {}let Con = [].shift.call(arguments)obj.__proto__ = Con.prototypelet result = Con.apply(obj, arguments)return result instanceof Object ? result : obj}o; // { a: 5, name: "zz" }
