function myNew(fn, ...args) {
const instance = Object.create(fn.prototype)
const data = fn.call(instance,...args)
return data instanceof Object ? data : instance
}
function Test(data) {
console.log(data)
return {
num: data
}
}
console.log( myNew(Test,123))