2
我是javascript的新手。我已經編寫如下:爲什麼我的函數未定義?
function Vec2(x_,y_)
{
this.x = x_;
this.y = y_;
}
文件中後來我創建一個函數是這樣的:
// Init game field array
var initGameField = function() {
var screenCenter = vec2(canvas.width/2, canvas.height/2);
var index = 0;
// Init gamefieldArray
for(var y = 0; y < maxVerticalBubbles; y++)
{
if(y%2)
{
for(var x = 0; x < maxHorizontalBubbles - 1; x++)
{
var initPoint = vec2(cellSize/2 + (screenCenter.x - ((maxVerticalBubbles - 1) * cellSize/2)) + (x * cellSize),
canvas.height/2 + (cellSize/2) + y * cellSize/1.1);
gameFieldArray[index] = initPoint;
}
}
else
{
for(var x = 0; x < maxHorizontalBubbles; x++)
{
var initPoint = vec2(cellSize/2 + (screenCenter.x - (maxVerticalBubbles * cellSize/2)) + (x * cellSize),
canvas.height/2 + (cellSize/2) + y * cellSize/1.1);
gameFieldArray[index] = initPoint;
}
}
}
}
但是,當我試圖在JavaScript的-file我得到的最終運行initGameField功能「initGameField」中的「vec2未定義」錯誤......應該如何做到這一點?爲什麼vec2沒有被識別,因爲它在initGameField函數之前和運行initGameField函數之前被引入?
他必須構造它,而不僅僅是調用。它應該是'var screenCenter = new Vec2(canvas.width/2,canvas.height/2);' – Esailija
謝謝,現在工作! :) – hedeic