javascript中的静态私有变量用于自己的库



我开发了一个库,使类结构像C++一样易于使用。我知道有很多方法可以在JS中归档C++等效行为,但其中一些方法真的很难限制,比如函数重新定义。为此,我开发了ClassBuilder.js.

目前,我可以通过封装和定义属性来涵盖C++的大部分行为。这包括成员的隐私,如私人、受保护和公共、虚拟功能、继承隐私。还有构造函数和析构函数调用。

目前,我试图解决列表中的最后一点:静态成员。通过将构造函数函数用作对象并在此对象中为其定义属性,可以很容易地解决公共静态成员。

Private静态成员变得稍微复杂一些。对于我最新的派生类,我可以使用在JavaScript中声明私有静态成员变量的方法:在stackoverflow.com/a/3158134/1789369上从Barmar回答(我不允许发布超过2个链接)

但我没有找到基类的解决方案。我想征求一下建议。即使你认为需要进行全面的重组。

致以最良好的问候和衷心的感谢。

ClassBuilder.js文档

最新ClassBuilder.js文件

您可以在es6中使用const,请参阅https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/const

另请参阅定义的getter属性(如数组中的长度)https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/get

最新更新