所以我是新的Javascript中的對象定義,並試圖編寫一個程序,作爲一個練習旋轉對象。我的問題是,當我試圖定義對象時,某些對象屬性依賴於對象的其他部分。我不確定這是否被允許,因爲在我所有的搜索中我都找不到它的任何例子。使用這種。在JavaScript對象定義
我的問題基本上是這樣的:我可以使用以前定義的對象屬性來定義該對象。最基本的例子是這樣的:
var alfred = {
dogs: 1,
cats:this.dogs+1,
}
這是允許的嗎?如果是的話,這是正確的語法?我需要使用「這個」的原因。是因爲我推新創建的對象不工作我的objects.The代碼的陣列低於:
obj.push({
canvas:document.getElementById(canvasName),
canvasName:"canvas"+objNum,
image: img,
width:objWidth,
height:objHeight,
centerX:posX,
centerY:posY,
speed:speeds,
hypSquare:Math.sqrt((this.width*this.width)+(this.height*this.height)),
angleInSquare:Math.atan(this.height/this.width),
angle:startAngle,
angleTotal:this.angle+this.angleInSquare,
offX:(this.hypSquare* Math.cos(this.anglesTotal))/2,
offY:(this.hypSquare* Math.sin(this.anglesTotal))/2,
centeredX:this.centerX-this.offX,
centeredY:this.centerY-this.offY,
})
,當我叫
console.log(obj[objNum].hypSquare);
(其中objNum只是指數)我會得到NaN,即使我打電話
console.log(obj[objNum].width);
我將得到objWidth的值。是否只是一個語法問題,或者是我對物體的理解存在根本上的缺陷......
預先感謝您的時間!
艾薩克
太棒了!非常感謝您的建議。我害怕我必須這樣做,但這就是生活...... – Cabbibo 2012-07-17 16:58:27