2015-08-14 77 views
0

我在我的網頁頂部的未定義的對象:爲什麼此對象屬性返回NaN?

var paddelY = {}; 

然後在抽籤循環,我把它定義(否則我得到一個錯誤,mouseY的是未定義):

paddelY = { 
    1 : mouseY + height*0.03, //Nuber 
    2 : this[1] - height*0.00275 //NaN 
}; 

然而,如果我要將paddelY[2]登錄到控制檯,那將是NaN

+0

你在哪裏定義的變量 「高度」? – bhspencer

+0

'this'不在paddelY對象上下文中 – Alexander

+0

在這種情況下,'this'將是您定義'paddleY'對象時的任何範圍的引用,而不是'paddleY'對象本身。 – lemieuxster

回答

3

您正在定義一個新對象。 this[1]將不可用,直到整個對象被解析,所以你在做undefined - height,這導致NaN

paddelY = { 1 : mouseY + height *0.03 }; 
paddelY[2] = paddelY[1] - height*0.00275; 

會工作

+0

謝謝! – Manu