私はarguments
関数の変数を別の関数にの別の引数として渡そうとしています。私はこれを試してみました:別の引数として 'arguments'を持つ関数を呼び出す
function call_function(func) {
func(arguments);
}
しかし、call_function(someFunction, 123, 456)
が実際にsomeFunction([someFunction, 123, 456])
を呼び出します。渡される関数自体にかかわらず、それはArguments
オブジェクト/配列のようなものとして渡されますが、私はむしろsomeFunction(123, 456)
としてこの場合の関数を呼び出したいと思います。私はまた試したことは:func(Array.prototype.slice.call(arguments, 1))
関数を削除することです(最初の引数)が、実際には配列を返します。つまり、配列を関数の最初の引数として渡します。
call_function
のコードをcall_function(someFunction, 123, 456)
というようにコーディングすると、someFunction(123, 456)
と呼ばれることがありますか?
あなたが解決しようとしている元の問題は何ですか?なぜあなたはこのように関数を呼び出す必要がありますか? – Andrey
@Andrey:実際はもっと理論的だった。 – pimvdb
私はTJHeuvelの答えがまさにあなたが探しているものだと思っています – Andrey