为了账号安全,请及时绑定邮箱和手机立即绑定

使用此访问静态函数

使用此访问静态函数

富国沪深 2022-12-22 13:02:12
如果我有一个类:class Rectangle {  constructor(height, width) {    this.height = height;    this.width = width;  }  getArea() {    return Rectangle.area(this.height, this.width);  }  static area(height, width) {    return height * width;  }}然后我可以创建该类的实例并getArea在该实例上调用我的函数:var x = new Rectangle(5,6);console.log(x.getArea());现在,由于某种原因,在我的getArea函数中Rectangle.area,我不想直接调用,而是想动态地找到类,并在类实例的任何动态上调用静态方法:  getArea() {    return this.class.area(this.height, this.width);  }static::area()在 PHP 中,我可以通过或之类的东西来做到这一点self::area()。我怎样才能做一些类似于Javascriptstatic的事情self来动态访问this所属类的静态方法?
查看完整描述

1 回答

?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

你可以参考x.constructor.area()。创建实例时,constructor将使其属性引用构造函数。这就是找到静态方法的地方。



查看完整回答
反对 回复 2022-12-22
  • 1 回答
  • 0 关注
  • 89 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号