如何在javascript类中添加方法?

0 javascript

我怎么能把setPosition放在类中DrawClockHand?是DrawCLockHand即使在Javascript技术的一类.

码:

var DrawClockHand = function(cv) {
    this._cv = cv;
    this._ctx = cv.getContext('2d');
    this.TIME = 1000;
    this._r = 50;
}

DrawClockHand.prototype.setPosition = function(x,y) {
    x = x || 0;
    y = y || 0;
    this._x = x;
    this._y = y;
}
Run Code Online (Sandbox Code Playgroud)

Aug*_*nta 5

DrawClockHand不是一个类,它只是一个创建具有给定结构的对象的函数(如果使用new运算符调用).

如果你像这样调用DrawClockHand函数:

var o = new DrawClockHand(someVal);
Run Code Online (Sandbox Code Playgroud)

然后,您将创建一个具有DrawClockHand函数建立的结构的新对象.在这种情况下,在o对象中也会有setPosition方法,因为它被设置为DrawClockHand的propotype属性.

所以这是有效的

var o = new DrawClockHand(someVal);
o.setPosition(1,2);
Run Code Online (Sandbox Code Playgroud)