ES6允许扩展特殊对象。所以可以从函数继承。这样的对象可以作为函数调用,但是如何实现这种调用的逻辑呢?
class Smth extends Function {
constructor (x) {
// What should be done here
super();
}
}
(new Smth(256))() // to get 256 at this call?
类的任何方法都通过 this
获得对类实例的引用。但是当它作为一个函数被调用时,this
指的是 window
。当类实例作为函数调用时,如何获得对它的引用?
附注: 用俄语问同样的问题。