Ciao,
dovendo rilanciare nel mio script una funzione sempre con gli stessi argomenti, mi sono imbattuto nell'oggetto arguments, che la guida O'Reilly definisce come un array a tutti gli effetti secondo gli standards ECMA-262 (fin da JavaScript 1.1).
Se così fosse, il metodo:
restituirebbe una stringa composta dagli argomenti separati da virgole, come per qualsiasi altro normale array non nativo costruito nella funzione.codice:var args = arguments.toString();
Invece non è così, infatti viene restituito (sia da FF, sia da MSIE) la stringa [object Object]
Questo mi obbliga a costruirla in modo più macchinoso con un ciclo che scorre tutti gli elementi dell'oggetto arguments e ne concatena i valori ad una variabile apposita:
Sapete cosa c'è all'origine di questo problema, ed eventualmente come ottimizzare il codice relativo?codice:var args = ""; for (i = 0; i < arguments.length; i++) { args += arguments[i]; if (i < (arguments.length - 1)) { args += ","; } }

Rispondi quotando
