AS3 - 在运行时评估 - D.eval vs hurlant

dt1*_*000 5 eval actionscript-3

我需要传入一个在运行时得到评估的字符串.所以我可以这样写:

var foo =  someEvalMethod ( "dataObject.someValue" )
Run Code Online (Sandbox Code Playgroud)

代替:

if ( argIn == "dataObject.someValue")
   var foo = dataObject.someValue
}
Run Code Online (Sandbox Code Playgroud)

有没有人对以下评估库有意见,或者对AS3有更好的评价?谢谢:

AS3 eval by hurlant:

http://eval.hurlant.com/

RIA 1的D.eval:

http://www.riaone.com/products/deval/

小智 4

据我所知, hurlant 的AS3 eval是一个“真正的”编译器。它解析代码,生成字节码并将其注入到正在使用的 Flash Player 实例中(我猜是通过 loadBytes() )。

D.eval具有相同的目的,但它不生成字节码,它解析表达式并通过自己的 API 动态执行它们。

我认为D.eval 是实现您想要实现的目标的良好候选人。它不是一个功能齐全的编译器,但它有足够的 API 来涵盖许多简单的操作。除此之外,它是一个有公司支持的产品,这总是一个很好的保证。

干杯!