【发布时间】:2011-12-14 22:08:59
【问题描述】:
考虑到您不能在动态函数中使用“this”,有什么方法可以在静态函数中包含动态变量。
我想做什么:
public static function convertToDynamicString(pString:String):String
{
if(pString == "" || pString == null) return "";
var re:RegExp = /(\{\w+\})/;
var results:Array = pString.split(re);
var dynamicString:String = "";
for each(var pWord:String in results)
{
if(pWord.substr(0, 1) == "{") dynamicString += this[pWord.substring(1, (pWord.length - 1))];
else dynamicString += pWord;
}
return dynamicString;
}
问题:
this["variable name"] 在静态函数中不起作用
【问题讨论】:
-
'this' 意味着你已经创建了你的类的一个实例,当你执行 yourClass.convertToDynamicString() 时不会发生这种情况。
标签: flash actionscript-3 apache-flex flex4 flex4.5