2010-05-04 46 views
1

我該如何解決這個錯誤?FLEX:作業的對象必須是參考值

Target of assignment must be a reference value 

for (var z:int=0; z<this.tags.getItemAt(i).yearPopularity.length; z++) {  
    summedPopularity.getItemAt(z) = summedPopularity.getItemAt(z) + tags.getItemAt(i).yearPopularity.getItemAt(z); 
       } 

感謝

回答

0

我用summedPopularity[i]代替了summedPopularity.getItemAt(i)

0

我不知道,你可以分配到()的話getItemAt返回的值

嘗試:

for (var z:int=0; z<this.tags.getItemAt(i).yearPopularity.length; z++) {  
    var tempItem:Object = summedPopularity.getItemAt(z) + tags.getItemAt(i).yearPopularity.getItemAt(z); 
    summedPopularity.setItemAt(tempItem, z); 
} 
0

這個錯誤意味着你想給的值(或只讀對象)一個值。 如果summedPopularity.getItemAt(Z)是什麼接受的唯一的事情,嘗試改變,要一個變種

var someVariable:Number =0; 
for (var z:int=0; z<this.tags.getItemAt(i).yearPopularity.length; z++) {  
    someVariable = summedPopularity.getItemAt(z) + tags.getItemAt(i).yearPopularity.getItemAt(z); 
} 

我認爲這將做工精細,

這樣表示summedPopularity.getItemAt(z)是對象類型。

trace(summedPopularity.getItemAt(z)); // < < <調試停止並檢查

請嘗試除此之外,您將不得不提供更多代碼並向我們展示summedPopularity是什麼。

希望它有幫助。