2009-08-24 10 views
2

私はPythonでプロトタイプ化したコードを移植していますが、actionscriptは期待したほど悪くはありません(私はv3がv2よりかなり良いと聞いています!)。それはあまりにも珍しい/定型のようですリスト...とは対照的にActionscript3はリスト内包表記やラムダ計算を提供していますか?

var a:int = 0; 

for each (var value:int in annual_saving) 

    { 

     a = a + value; 

    } 

return a/100; 

を...合計する

私にとってはあまりにも多くのJavaのようなビットを感じている
return reduce(lambda x,y: (x+y), self.annual_saving)/100 

(EWWのJava:!吐くXO ###)

私は単純にas3のクールな配列合計機能を知らないのですか?あるいはラムダ計算を理解するのか、リストの理解を行うのか?または他のそのような簡潔な記法を提供するか?これを行うよりエレガントな方法があるか疑問に思っていますか、このプロジェクトの残りの部分については20世紀に取り残されていますか?

乾杯:)

ロジャー。

答えて

5

ActionscriptはJSと非常に似ています。あなたはこれを簡単に拡張することができ

var annual_saving = [50, 100, 50, 100]; 
function reduce (f, arr) { 
    var a = arr[0]; 
    for (var i = 1; i < arr.length; i++) { 
     a = f(a,arr[i]); 
    } 
    return a; 
} 
var res = reduce(function (x,y) { return x+y }, annual_saving); 

...構文はやや少ない魅力的な、まだ非常に簡潔になります:あなたが持っていた場合は、簡単にそれを自分で実装することができます。

2

リスト内包は行いませんが、無名関数と終了をサポートしています。また、Arrayクラスにはmapfilterがあります。

関連する問題