a dire il vero tu ne puoi passare quanti ne vuoi di argomenti ad una funzione. Solitamente la funzione gestisce solo quelli definiti nella sua definizione:

Ad esempio:
codice:
function MyTest(uno, due, tre){
   alert(uno+" "+due+" "+tre);
}

MyTest("pippo", "ti", "saluta", "tanto", "e", "ti", "manda", "un", "bacio");
Verrà fatto l'alert solo dei primi 3 argomenti, "pippo ti saluta", gli altri saranno ignorati. Però non ci sono errori nel codice.

Tuttavia, JS offre una funzionalità per gestire un numero non fisso di argomenti, è l'array arguments, definito all'interno delle funzioni.

codice:
function MyBetterTest(){
   var txt = "";
   for(var i = 0; i < arguments.length; i++) txt += arguments[i] + " ";
   alert(txt.substr(0, txt.length - 1)); 
}

MyBetterTest("pippo", "ti", "saluta", "tanto", "e", "ti", "manda", "un", "bacio");
Otterrai l'alert di tutto "pippo ti saluta tanto e ti manda un bacio".