开发者社区> 问答> 正文

实现一个 new 操作符

实现一个 new 操作符

展开
收起
kun坤 2019-11-28 14:05:26 364 0
1 条回答
写回答
取消 提交回答
  • function New(func) {
      var res = {};
      if (func.prototype !== null) {
        res.__proto__ = func.prototype;
      }
      var ret = func.apply(res, Array.prototype.slice.call(arguments, 1));
      if ((typeof ret === "object" || typeof ret === "function") && ret !== null) {
        return;
        ret;
      }
      return;
      res;
    }
    var obj = New(A, 1, 2);
    // equals to
    var obj = new A(1, 2);
    
    2019-11-28 14:05:35
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载