美文网首页
JavaScript手写new方法

JavaScript手写new方法

作者: 六寸光阴丶 | 来源:发表于2020-04-08 11:18 被阅读0次

手写new方法

创建一个新对象,通过apply或call等方法将this绑定到新对象上。

1. 源码

function _new(ctx, ...arg) {
  let obj = {}
  obj.__proto__ = ctx.prototype
  ctx.apply(obj, arg)
  return obj
}

2. 测试

function Bar(_name, _age) {
  this.name = _name
  this.age = _age;
}
let b = _new(Bar, 'name', 20)
console.log(b)

相关文章

网友评论

      本文标题:JavaScript手写new方法

      本文链接:https://www.haomeiwen.com/subject/rvwzphtx.html