0

我正在尝试编写我的第一个未破解的 jQuery 插件,并且我正在努力创建一个带有构造函数、公共变量、私有变量和函数的基本对象。

http://jqueryboilerplate.com/有一个很好的指南来创建扩展 jQuery 的对象,但我不认为这是一个不附加到 DOM 元素的通用对象的正确方法。

有没有人有用于创建基本可重用对象的样板模板?IE

var calc = new CustomCalculator({'starting_value': 42});
calc.add(3);
calc.multiplyBy(2);
alert(calc.total);   // Alerts (42 + 3) * 2 = 90
4

1 回答 1

1

从您的代码示例看来,您只需要一种创建 JS 对象的基本方法。这可以解决问题(但还有很多其他方法可以做到):

function CustomCalculator(options){
    var self = this;
    self.total = options.starting_value;

    self.add = function(term){
        self.total += term;
    };

    self.multiplyBy = function(term){
        self.total = self.total * term;
    };
}

var calc = new CustomCalculator({'starting_value': 42});
calc.add(3);
calc.multiplyBy(2);
alert(calc.total);   // Alerts 90

你仍然需要实现字符串连接,但我会留给你

如果你想要私有变量,你应该使用闭包。我最近写了一篇关于 JavaScript 中的命名空间和模块的文章,它可以帮助你:http ://www.kenneth-truyers.net/2013/04/27/javascript-namespaces-and-modules/

这是另一个专门关于私有变量的:http: //www.kenneth-truyers.net/2012/04/22/private-variables-in-javascript/

于 2013-05-02T18:22:05.943 回答