js问题,请问怎么理解如图代码

2025-04-06 01:43:47
推荐回答(1个)
回答1:

意思是继承。运行了上面的程序之后,Target就变成了Origin对象的一个新的类,以下是逐行说明:

// 从Origin(源头)类型构造一个新的类,继承给Target(目标)
function inherit(Target, Origin) {
    // 定一个空白函数,用于初始化(原型占位)
    function F(){};
    // 复制类原型
    F.prototype = Origin.prototype;
    // 从空白函数构造一个占位原型
    Target.prototype = new F();
    // 将构造函数设置为从空白占位函数方式创建实例
    Target.prototype.constructor = Target;
    // 新类型准备完毕,继承Original源头的原型
    Target.prototype.uber = Original.prototype;
}