gpt4 book ai didi

javascript - JS模块模式覆盖函数

转载 作者:数据小太阳 更新时间:2023-10-29 05:23:16 25 4
gpt4 key购买 nike

我有以下模式

BASE = function () {
var that = {};
var number = 10;

that.showNumber = function(){
that.alertNumber();
}

that.alertNumber = function () {
alert(number);
};
return that;
};

CHILD = function () {
var that = Object.create(BASE());
var secondNumber = 20;

// Override base function
that.alertNumber = function () {
alert(secondNumber);
};
return that;
};

var ch = CHILD();
ch.showNumber();

你能告诉我如何调整受 Douglas CrockFord 启发的模块模式以完全覆盖 alerNumber 函数吗?到目前为止,showNumber 函数显示 10 而不是 20。

先谢谢大家

带有代码的 JSFiddle 是 here

最佳答案

你可以改变

that.showNumber = function(){
that.alertNumber();
}

that.showNumber = function(){
this.alertNumber();
}

但我不确定我明白你为什么不简单地使用 the prototype-base inheritance model .

关于javascript - JS模块模式覆盖函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16859602/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com