gpt4 book ai didi

Javascript:一旦 'class/object' 变为 'extended' ,是否可以使用不同的基数 'class/object' 重新扩展它?

转载 作者:行者123 更新时间:2023-11-28 10:15:02 25 4
gpt4 key购买 nike

我正在尝试向现有 JS 框架 (Wireit) 中的类树添加新属性。请参阅此处了解更多详细信息:Javascript: Is it possible to inject new functions into a base 'class/object' that will be available in all sub-'classes/objects'?

我最初的方法是重新定义基类,但事实证明这很棘手。

我现在想知道是否可以对基类进行子类化,添加我的扩展,然后对扩展基类的类重新进行子类化以使用我的基类。复杂的?我将做一个简单的图表来说明我的意思......

当前继承

Container --> ImageContainer
Container --> FormContainer

新继承

Container --> MyContainer --> ImageContainer
Container --> MyContainer --> FormContainer

这可能吗?

最佳答案

只需添加 guid 作为方法即可完成。

Container.prototype.GUID = function() {
return GUIDSystem.getGUID(this);
}

编写您自己的 GUIDSystem 来为每个对象返回唯一的 GUID。

提示:使用WeakMap 、WeakMap shim 以及 map 中 GUID 的惰性填充。

关于Javascript:一旦 'class/object' 变为 'extended' ,是否可以使用不同的基数 'class/object' 重新扩展它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6778047/

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