我正在研究一個jQuery插件,並且對於我正在使用的一些對象有幾個問題。我保證我花了大約一個小時搜索谷歌,但顯然我的搜索條件不夠具體。這裏有一個例子:JavaScript對象,兩個問題
var rgba = {
red = {
startHex : 'FF',
startDec : parseInt(startHex,16),
endHex : '00',
endDec : parseInt(endHex,16),
diffDec : endDec - startDec
},
green = {
startHex : 'FF',
startDec : parseInt(startHex,16),
endHex : '00',
endDec : parseInt(endHex,16),
diffDec : endDec - startDec
},
blue = {
startHex : 'FF',
startDec : parseInt(startHex,16),
endHex : '00',
endDec : parseInt(endHex,16),
diffDec : endDec - startDec
},
}
現在,它會告訴我, 'startHex' 在 'parseInt函數(startHex,16)' 是不確定的。是否有可能從一個兄弟屬性中引用一個對象中的另一個屬性,如果是的話,你是如何做到的?
我的另一個問題是,因爲'rgba'的屬性本身都具有相同的屬性,我如何使用帶有for循環的數組來引用每個屬性?例如,這是不行的:
var colors = ['red','green','blue'];
for(i in colors) {
alert(rgba.colors[i].diffDec);
}
出於顯而易見的原因,因爲此代碼應該有所謂的「顏色」爲「RGBA」對象的屬性。我想過使用eval():
var colors = ['red','green','blue'];
for(i in colors) {
alert(rgba.eval(colors[i]).diffDec);
}
但它告訴我,的eval()不是 'RGBA' 的屬性。關於我如何做到這一點的任何建議(除了在'rgba'下實際創建屬性'顏色')?
謝謝!
請將此分成兩個單獨的問題。 – zzzzBov 2011-01-26 19:49:37