Чтобы вызвать функцию javascript из flash с несколькими аргументами, все, что вам нужно сделать, это:
ExternalInterface.call.apply(null, [functionName, arg1, arg2, ..., argn]);
Если вы берете аргументы из списка переменных аргументов другой функции, вы можете использовать:
function JSCall(methodName:String, ...args):void
{
if (ExternalInterface.available){
args.unshift(methodName);
ExternalInterface.call.apply(null, args);
}
//btw, you can do the same with trace(), or any other function
args.unshift('Calling javascript function');
trace.apply(null, args);
}
Где-то еще вы бы позвонили:
JSCall('console.log', 'Testing', 123, true, {foo:'bar'});
... что напечатало бы что-то вроде Testing 123 true Object
на вашей консоли firebug / webkit.
Это проверено и работает точно, так как я использую его в реальном проекте.