贵在坚持

文章 评论 浏览 28

贵在坚持 2022-05-04 13:57:39
// 实现一个new
// 1. 创建一个空对象,并指向构造函数的原型
// 2. 将空对象指向构造函数的this, 用构造函数内部方法修改空对象
// 3. 如果构造函数返回一个非基本类型的值,则返回这个值,否则返回空对象

function Person(name, age) {
  this.name = name;
  this.age = age;
}

function _new(fn, ...args) {
  const obj = Object.create(fn.prototype);
  const result = fn.apply(obj, args);
  return result instanceof Object ? result : obj;
}

console.log(_new(Person, "xuzhen", "18"));

第 14 题:情人节福利题,如何实现一个 new

贵在坚持 2022-05-02 02:33:59

有些启发,3Q...

如何探测 JS 代码中的死循环

更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文