0
我一直在關注如何使一個簡單的遊戲在HTML5 this tutorial,和我遇到了一個有趣的使用參數,我無法理解......這裏來了筆者創建了一個名爲子彈有一個構造函數參數I,但看他如何使用I.這裏發生了什麼?我不明白:JavaScript構造參數
function Bullet(I) {
I.active = true;
I.xVelocity = 0;
I.yVelocity = -I.speed;
I.width = 3;
I.height = 3;
I.color = "#000";
I.inBounds = function() {
return I.x >= 0 && I.x <= CANVAS_WIDTH &&
I.y >= 0 && I.y <= CANVAS_HEIGHT;
};
I.draw = function() {
canvas.fillStyle = this.color;
canvas.fillRect(this.x, this.y, this.width, this.height);
};
I.update = function() {
I.x += I.xVelocity;
I.y += I.yVelocity;
};
return I;
}
感謝您的幫助,但我張貼在格蘭問題的代碼塊前右它說以下內容:「接下來,我們需要一個構造函數來創建子彈實例。「那麼它怎麼不是一個構造函數呢? – 2012-04-29 00:21:03
@ErickMaynard如果它創建了「實例」,那麼它應該使用'new'關鍵字。使用構造函數創建實例,就像'var test = new ConstructorName()'一樣調用它。這之後返回一個對象並將其存儲到'test'中。但在該教程中,事實並非如此。它只需要一個現有的對象,對它進行擴充並將其返回。沒有創建實例。 – Joseph 2012-04-29 00:27:20
我想我仍然困惑。它最終在畫布上畫出一個「子彈」。它如何做到這一點,如果它從來沒有創建子彈的實例? – 2012-04-29 00:42:12