javascript - 如何创建指向此的类范围指针?

标签 javascript class oop this

我正在使用 John Resig 的简单 JavaScript 继承。 我知道我可以使用 this 变量在方法之间共享值:

var Person = Class.extend({
  init: function(isDancing){
    this.dancing = isDancing;
  }
});

我想创建一个指向this的指针,这样以后它就不会被覆盖,如下所示:

$('#id').click(function() {
  // this now points to selector
});

如何创建可在类范围内访问的 that = this 指针?

最佳答案

您可以使用“.apply()”

var Person = Class.extend({
  init: function(isDancing){
    this.dancing = isDancing;
  },

  setDancing = function(isDancing) {
    this.dancing = isDancing;
  }
});

var p = new Person();

$('#id').click(function() {
  p.setDancing.call(p, NEWVALUE);
  // 'this' will point to 'p' in the function 'p.setDancing'
});

关于javascript - 如何创建指向此的类范围指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23934253/

相关文章:

c++ - 成员没有默认构造函数

javascript - 定义 Javascript 原型(prototype)

javascript - 选择 jquery,更新 <option> 字段

javascript - 打开新浏览器窗口的最佳方式是什么?

javascript - 数组的数组格式问题

C++,改变属于一个类的结构对象的值

c++ 继承类中函数重载的问题

python - 从对象扩展类

java - 为 Box 类创建测试驱动程序并测试其所有方法

javascript - 如何使用jquery在页面上显示特定的div id?