2014-01-16 45 views
3

我在調試器中一遍又一遍地運行相同的錯誤,在形式參數後面出現「SyntaxError:missing」)。SyntaxError:missing)在形式參數之後

這裏是我的參數我設置:

var CircleOptions = { 
    posBall: { 
     x: 160, 
     y: 180 
    }, 
    radius: 40, 
    startAngle: 0, 
    endAngle: Math.PI * 2, 
    anticlockwise: false, 
    radians: 0, 
    xMove: Math.random(), 
    yMove: Math.random(), 
    speed:2, 
    angle:80, 
    velocityX:1, 
    velocityY:1 
}; 

這是我的代碼:

function CircleCoordinates(CircleOptions.posBall.x, CircleOptions.posBall.y, CircleOptions.radius) { 
    var left = CircleOptions.posBall.x - CircleOptions.radius, 
    top = CircleOptions.posBall.y + CircleOptions.radius, 
    right = CircleOptions.posBall.x + CircleOptions.radius, 
    bottom = CircleOptions.posBall.y - CircleOptions.radius; 
}; 

我得到同樣的錯誤,以及當我進入我的功能,以及:

function CircleCoordinates(CircleOptions.posBall.x, CircleOptions.posBall.y, CircleOptions.radius) { 
    var left = CircleOptions.posBall.x - CircleOptions.radius; 
    var top = CircleOptions.posBall.y + CircleOptions.radius; 
    var right = CircleOptions.posBall.x + CircleOptions.radius; 
    var bottom = CircleOptions.posBall.y - CircleOptions.radius; 
}; 

任何人都可以告訴我什麼是錯的? :)

+4

參數不能被稱爲'CircleOptions.posBall.x',這不是一個有效的變量名稱。 – deceze

+2

這是無效的JavaScript語法。這些不是有效的參數名稱。 – elclanrs

+0

「CircleOptions」的定義/分配值在哪裏? – admdrew

回答

5
function CircleCoordinates(CircleOptions) { 
    var left = CircleOptions.posBall.x - CircleOptions.radius, 
    top = CircleOptions.posBall.y + CircleOptions.radius, 
    right = CircleOptions.posBall.x + CircleOptions.radius, 
    bottom = CircleOptions.posBall.y - CircleOptions.radius; 
} 
+0

這太棒了!非常感謝你! – Amechi

+0

歡迎您標註爲已回答。 – Marko

0
function CircleCoordinates(x, y, radius) { 
    var left = x - radius, 
    top = y + radius, 
    right = x + radius, 
    bottom = y - radius; 
}; 

我認爲這就是你想要的。

+0

我認爲Marko's是更好的答案,因爲OP定義並試圖使用'CircleOptions'。 – admdrew

+0

哦,哎呀,完全跳過'CircleOptions'對象 – Vic

相關問題