javascript - 关于命名空间下静态类的问题

标签 javascript jquery class namespaces

我的 JavaScript 代码“MyNameSpace”中有一个命名空间。我正在其中创建一个静态 JavaScript 类“MyChildStaticClass”。我正在使用模块化模式。下面是我的代码:

if (typeof MyNameSpace == 'undefined' || !MyNameSpace) {

    var MyNameSpace = {};
}

    var MyNameSpace = (function(MyNameSpace) {

        MyNameSpace.MyChildStaticClass = (function() {
            var myobject;
            myobject = { 
                x:function(str) {
                    alert(str);
                }
            };

            return myobject;
        })();
        return MyNameSpace;
    } (MyNameSpace || {}));

上面的代码将像这样使用:

MyNameSpace.MyChildStaticClass.x('test');

上面的输出将是一个带有消息测试的警告框。我有一个问题,这是创建静态类和调用上述方法的好方法吗?有没有其他方法可以熟练的写出来?

最佳答案

您可以通过以下方式获得相同的功能:

var MyNameSpace = {};
MyNameSpace.MyChildStaticClass = {
    x : function(str) {
        alert(str);
    }
}

关于javascript - 关于命名空间下静态类的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6694000/

相关文章:

javascript - Webpack:如何在一个全局变量下隐藏导出函数/变量?

javascript - 正确访问 Vue 3 中的响应式(Reactive)数组

jquery - jqGrid 出现“无法获取属性 'Id' 的值”错误

java - 在 Java 中实现 Comparable

python - 在Python中使用类来记录分数

javascript - trigger.io 上的 Firebase Javascript API - 从本地文件加载脚本

jquery - Bootstrap Select-Picker 防止关闭

jquery - $.getJSON 的同步等效方式

java - 单例模式中枚举相对于类的优势

javascript - Vue渲染按钮