从自对象javascript内部调用的公共方法?

从自对象javascript内部调用的公共方法?,javascript,jquery,Javascript,Jquery,有没有办法从同一对象内配置的jquery按钮单击调用public方法??下面我向你展示了我尝试过的多种方法 var myClass = new MyClass(); function MyClass() { this.func1 = function () { alert("Hello World"); } var me = this; $("#my-button").click(function(){ //func1(); //don

有没有办法从同一对象内配置的jquery按钮单击调用public方法??下面我向你展示了我尝试过的多种方法

var myClass = new MyClass();

function MyClass() {
   this.func1 = function () {
      alert("Hello World");
   }

   var me = this;    
   $("#my-button").click(function(){
      //func1(); //dont work (wold like)
      //this.func1(); //dont work (would like)
      me.func1();   //Work! but is not correct way to do it
      myClass.func1(); //Work! but the idea its that recognize itself widthout call public   instance
  });
}
其他方法???

尝试以下方法:

var myClass = new MyClass();

function MyClass() {
   var myFunc = function () {
      alert("Hello World");
   }
   this.func1 = myFunc;

   $("#my-button").click(function(){
      myFunc();  
  });
}

me.func1()实际上是正确的方法,尽管我相信惯例是将其命名为“self”而不是“me”。因为点击处理程序中的
这个
指向
我的按钮
这个.func1()
不起作用
func1()
将不起作用,因为当最终触发单击处理程序时,它将处于不同的上下文中,
func1()
在该上下文中没有任何意义。您的解决方案很好。

me.func1()//工作但这不是正确的方法吗?这种方法有什么错?你说的“公共方法”是什么意思?@ParthThakkar我想问一个相同的问题Javascript是Javascript,不要试图强迫它像另一种语言(例如java)一样工作。最佳实践?根据什么?称之为惯例。哈哈,我没有根据,这就是为什么我在前面加上“我相信”。约定的约定更好。