0

javascript(signalR)関数を呼び出したい。パラメータの長さが期待どおりの長さである場合にのみ応答します。

問題を解決しようとするのは私の試みです(eval()の文字列は配列の長さから生成されます):

var ar = [1,2,3];

function test(a, b, c) {
    console.log("a:" + a);
    console.log("b:" + b);
    console.log("c:" + c);
}
test(eval("ar[0], ar[1], ar[2]"));

この場合、 b と c は常に「未定義」です...そのような問題を解決する方法を誰かに教えてもらえますか?

私の配列が long (ar.length) であるのと同じくらい多くのパラメータを関数に与えたいです。

ありがとう :)

4

1 に答える 1

1

.apply()を使用できます

test.apply(window, ar )

次に、関数内で引数を使用してすべての引数にアクセスできます

function test(){
    for(var i = 0; i < arguments.length; i++){
        console.log(i + ':' + arguments[i])
    }
}
于 2013-09-10T15:40:15.637 に答える