首页 > 其他 > 详细

手写简易new

时间:2020-12-26 20:32:32      阅读:63      评论:0      收藏:0      [点我收藏+]

记录贴

 

 

    // 手写new
    
    function Mynew(Fn,...args){
        if(typeof Fn !== "function"){
            throw "必须是方法体"
        }
        
        const obj = {}
        obj.__proto__ =  Object.create(Fn.prototype)
        Fn.apply(obj,args)
        return obj
    }
    
    function Ps(name,age){
        this.name = name
        this.age = age
        Ps.prototype.go = function(){
            console.log("原型")
        }
    }
    
    let vs = Mynew(Ps,"哈哈",2)
    console.log(vs.name)
    vs.go()

 

手写简易new

原文:https://www.cnblogs.com/styleFeng/p/14193555.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!