如何将setPosition放在类DrawClockHand中?从技术上讲,DrawCLockHand甚至是Java类。

码:

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;
}

最佳答案

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

如果像这样调用DrawClockHand函数:

var o = new DrawClockHand(someVal);


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

所以这是有效的

var o = new DrawClockHand(someVal);
o.setPosition(1,2);

10-08 11:27