获取"这个“;在父类中
Get "this" within the parent class
我的问题是我无法访问父类中正确的this对象。
父类:
ViewController.prototype.display = function() {
console.log(this); // Log a Window object
};
子类:
ParentMissionsViewController.prototype = Object.create(ViewController.prototype);
ParentMissionsViewController.prototype.constructor = ParentMissionsViewController;
ParentMissionsViewController.prototype.parent = ViewController.prototype;
ParentMissionsViewController.prototype.display = function() {
// Other stuff here
this.parent.display.call();
};
我不明白为什么这不是我现在的对象,如果有人能解释我的话?
如果您调用
this.parent.display();
然后它看起来像:
var that = this.parent;
that.display();
我想你是想避免的。使用call
是一种好方法,但您需要提供this
:的值
this.parent.display.call(this /* , arg, arg... */);
参见MDN上call
的签名。
尝试
this.parent.display();
当您使用调用来调用一个方法时,需要将自定义的this值指定为第一个参数。您在当前代码中得到的值是多少?我猜是未定义?
相关文章:
- 是否可以从父类访问子类的属性
- 使用此选项选择父类内部的类
- 子类访问父类's闭包变量
- 如何通过Prototype或jquery移除子类的父类基类
- JavaScript—父类和子类/对象的此问题
- 通过使用此组件,检索父类数据
- jQuery .not() 排除特定类的父类
- 如何在 jQuery 中获取具有特定父类的所有元素的内容,并将它们传递给 GET 变量
- 如何在单击父类的另一个子类时获取子类的值
- 初始化父类中的变量(JavaScript/CoffeeScript 习语)
- hover添加类-或子类:悬停以影响父类
- 唯一标识父类的元素
- 无法将值从实例对象传输到父类的实例数组中
- 访问父“;这个“;变量,来自继承类
- jQuery父类更改的子级
- 在父类更改时停止HTML5音频/视频
- 如何从父类中记录成员函数
- 为什么我的innerHTML覆盖父类的样式属性?以及我该如何解决这个问题
- & # 39;这个# 39;在父类的子类中使用时调用函数
- 获取"这个“;在父类中