Si queremos definir una función que acepte un número variable de parámetros tendremos que emplear la clase arguments. Esta clase, que está disponible desde Flash Player 5, almacena en un array todos los parámetros o argumentos que le hemos enviado a la función. Para acceder a la clase lo hacemos desde el interior de la propia función. En este ejemplo vamos a definir una función que nos devuelve la suma aritmética de todos los valores que le pasemos.
function media() { var total = 0; for (var k = 0; k<arguments.length; k++) { total += arguments[k]; } return total / arguments.length; }
// ejemplos de uso de la función media trace(media(2, 4, 6, 8)); // retorna 5 trace(media(1000, 5000, 20, -40, 56, 2, 8, 34, 543, 1, 0, 23, 34, 55, 2345)); // retorna 605.4
Como se ve, el código es ActionScript 1.0, lo hemos hecho a propósito para poder emplearlo en Flash 5 y MX.
En AS 2.0 empleando Strict Data Typing quedaría casi igual:
function media():Number { var total:Number = 0; for (var k:Number = 0; k<arguments.length; k++) { total += arguments[k]; } return total / arguments.length; }