如何在javascript中定义静态方法类

时间:2013-10-11 16:57:42

标签: javascript jquery

虽然我已经使用了很多年的Javascript,但就所有流行的框架和库而言,我完全是一个新手。在一般意义上我对“包”有很多疑问:找到一个列出所有通用工具包(如JQuery)以及专业解决方案的备忘单会很好。但我的过渡是渐进的,我仍在“自己动手”。

在滚动我自己的方面:我如何在Javascript中创建不打算实例化以便捆绑静态方法的类?例如:

var mypackage = new Object ;
mypackage.getDocument = function () {
    return document ;
}.bind( mypackage ) ;

mypackage.getCookie = function () {
    return this.getDocument().cookie ;
    }.bind( mypackage ) ;

此示例有意无关紧要,请不要回复检索文档Cookie的替代方法。

此示例演示了我在Javascript中定义的典型方法。但我知道bind()运算符相对较新,可能不适合生产。真的吗?有替代方法吗?

1 个答案:

答案 0 :(得分:3)

我经常看到它们被初始化为一个对象,并且也是这样做的。一个例子是:

// Definition.
var mypackage = {
    getDocument: function () {
        return document;
    },

    getCookie: function () {
        return this.getDocument().cookie;
    }
};

// Example.
(function () {
    console.log(mypackage.getCookie());
}());