2011-11-07 87 views
0

我有下面一段代码在我的ActionScript文件(在函数中定义)哪个(下面两个)在ActionScript编程的方法更好/ preferrable /性能更好

var cmbSyncItems:Object = new Object(); 
cmbSyncItems = {tooltip:xmlContent.messages.cmbsync[0].tooltip, option1label:xmlContent.messages.cmbsync[0].option1[0].label, option1data:xmlContent.messages.cmbsync[0].option1[0].data, option2label:xmlContent.messages.cmbsync[0].option2[0].label, option2data:xmlContent.messages.cmbsync[0].option2[0].data}; 
cmbSync = new ObjectProxy(cmbSyncItems); 

var btnFeedbackItems:Object = new Object(); 
btnFeedbackItems = {tooltip:xmlContent.messages.btnfeedback[0].tooltip, label:xmlContent.messages.btnfeedback[0].label}; 
btnFeedback = new ObjectProxy(btnFeedbackItems); 

下面是重写代码一遍又一遍地使用相同的'物品'物品。

var items:Object = new Object(); 
items = {tooltip:xmlContent.messages.cmbsync[0].tooltip, option1label:xmlContent.messages.cmbsync[0].option1[0].label, option1data:xmlContent.messages.cmbsync[0].option1[0].data, option2label:xmlContent.messages.cmbsync[0].option2[0].label, option2data:xmlContent.messages.cmbsync[0].option2[0].data}; 
cmbSync = new ObjectProxy(items); 

items = new Object(); 
items = {tooltip:xmlContent.messages.btnfeedback[0].tooltip, label:xmlContent.messages.btnfeedback[0].label}; 
btnFeedback = new ObjectProxy(items); 

项目对象将在同一个文件中重复多次(超过几百次)。

哪种编码方法更好(第一块或第二块)?

如果我采取'第二',会不会好起来?使用第一种方法会有什么区别(就内存消耗而言)?

回答

2

我宁愿建议第三种选择:

cmbSync = new ObjectProxy({ tooltip:xmlContent.messages.cmbsync[0].tooltip, 
          option1label:xmlContent.messages.cmbsync[0].option1[0].label, 
          option1data:xmlContent.messages.cmbsync[0].option1[0].data, 
          option2label:xmlContent.messages.cmbsync[0].option2[0].label, 
          option2data:xmlContent.messages.cmbsync[0].option2[0].data }); 
btnFeedback = new ObjectProxy({ tooltip:xmlContent.messages.btnfeedback[0].tooltip, 
           label:xmlContent.messages.btnfeedback[0].label }); 

UPD
第一种方法似乎不一样,如果所有的对象都声明为局部变量要更多的内存饿了,但所有这些声明都是imho,真的是不必要的

+0

:)非常好。你的答案是一个很好的解决方案没有必要有额外的变数:)谢谢 –

+0

不用客气) – www0z0k