2010-04-14 84 views
2

我想创建一个名为“myPlugin”的插件。我应该使用哪种方法,这两种方法有什么区别?请告诉我也有好处。我从设计背景和没有太多的编程知识。创建Javascript插件

var myPlugin = { 
    myId:"testId",   
    create:function(){}, 
    destroy:function(){} 
} 

OR

function myPlugin() { 
this.myId = "testId"; 
this.create = function(){}; 
this.destroy = function(){}; 

}

回答

2

第一种方法是创建一个对象存储在一个名为myPlugin变量。此表单中仅存在一个“插件”实例。如果你知道你只需要一个实例,这种方法是一个不错的选择。您还可以通过使用Module Pattern来扩展其功能以允许公共和“私人”属性。

第二种方法定义了一个对象构造函数,它允许您使用new关键字创建该对象的多个实例。这将允许您根据需要使用尽可能多的对象副本,并使您能够使用其prototype添加到对象上。

0

我会去的东西,如:

function myPlugin() { 
    this.myId = "testId"; 
    this.create = createFunction; 
    this.destroy = destroyFunction; 
} 
function createFunction() { 
    alert('createFunction() called'); 
} 
function destryFunction() { 
    alert('destroyFunction() called'); 
} 

my plugin = new myPlugin();