Home > 日記 > Actionscript3.0でeval

Actionscript3.0でeval

  • 2008-11-09 (日) 16:29
  • 日記

Actionscript3になるとeval関数は用意されていないようですが、さまざまなやり方でevalを実現できるようです。

  • evalを実装したライブラリを使う
  • インスタンスの動的な参照はthis[hoge.toString()].fooとして可能
  • Javascriptのevalを呼び出す

という感じ。

まぁライブラリかなと思い、いきついたのがD.eval

関数も使えてかなり便利そうです。

import r1.deval.D;
var six:int;
six = D.eval("4 + 2") as int;
six = D.evalToInt("var x=0; for(i=1;i<=3;++i)x+=i;return x");
six = D.evalToInt("a * b", {a:2, b:3});
six = D.evalToInt("f(5)", {f:function(x:int):int{return x+1}});
six = D.evalToInt("xml.@size*2", {xml:});
six = D.evalToInt('xml=; return xml.@size*2');

という感じで使えるらしい。

Comments:0

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://diary.fukuyamakoto.com/archives/174/trackback
Listed below are links to weblogs that reference
Actionscript3.0でeval from REALGOLD::なんとなく、微炭酸

Home > 日記 > Actionscript3.0でeval

Search
Feeds
Meta

Return to page top