Hola
Jawar:
No sé qué problema tienes en hacer esto:
Código PHP:
function decide(a,b,c) {
alert("a="+a+"\rb="+b+"\rc="+c);
}
var nuevaFuncion=function() {
decide(array[0],array[1],array[2]);
}
var array = [10,20,30];
nuevaFuncion();
No le veo más vuelta de hoja. Si es que no sabes cuántos elementos va a tener array siempre existe
Function.apply() para mandar los elementos del array como si fueran argumentos:
Código PHP:
function decide(a,b,c) {
for(var i=0, res=""; i<arguments.length; i++)
res+= "El argumento "+i+" es = "+arguments[i]+"\r";
alert(res);
}
var nuevaFuncion=function() {
decide.apply(window, array);
}
var array = [10,20,30];
nuevaFuncion();
La sintaxis de
apply() para llamar a
f() con el array de argumentos
ar si
f() cuelga de
window (a veces cuelga de otro objeto porque puede ser método de una clase) es:
Código PHP:
f.apply(window, ar); // Llamamos a f() ( = window.f() ) con los elementos de ar como argumentos
metodoDeObjeto(objeto, ar); // Así llamamos a objeto.metodoDeObjeto() (metodoDeObjeto tiene que estar declarado fuera de la clase, como variable global) con los elementos de ar como argumentos
Si con eso no lo solucionas expón un poco más tu problema porque no logro captarlo.
Saludos.