AS3で可変長引数リストをアンパックする方法があるのだろうかと思います。たとえば、この機能を取る:AS3でのvar argsのアンロール
public function varArgsFunc(amount:int, ...args):Array
{
if (amount == 3)
{
return args
}
else
{
return varArgsFunc(++amount, args)
}
}
私はこれを呼び出す場合:
var result:Array = varArgsFunc(0, [])
結果が今の配列のネストされたセットが含まれます
[[[[]]]]
をここでの問題は、引数のパラメータがあるということです配列として扱われます。ですから、可変引数リストを持つ関数に渡すと、それは単一の引数として扱われます。 Scalaで
があります:パラメータのリストにリストをばらばらにコンパイラーに指示します_ *演算子:
var list:Array = ['A', 'B', 'C']
// now imagine we have this class, but I would like to pass each list element
// in as a separate argument
class Tuple {
public function Tuple(...elements)
{
// code
}
}
// if you do this, the list will become be passed as the first argument
new Tuple(list)
// in scala you can use the :_* operator to expand the list
new Tuple(list :_*)
// so the :_* operator essentially does this
new Tuple(list[0], list[1], list[2])
は、私は技術/オペレータが拡大してAS3に存在するかどうかを知りたいです引数リストへの配列
となりますが、これは私が探しているものではありません ために。私は自分自身をより明確に説明しようと試みて、その質問を書き直しました。 –
ホーケイ、私の答えを編集しました。今はまし? ;) – grapefrukt
グレープフルーツありがとう –