Functions


Syntax
// Timeline function
function functName(param1:type [, paramX:type]*):returnType {
    statements;
    [return [expr];]
}

// Global function
_global.functName = function(param1:type [, paramX:type]*):returnType {
    statements;
    [return [expr];]
}
Usage
  • Omitted parameters are passed with a value of undefined.
  • Extra parameters passed to a function are ignored.
  • If the return statement is used without an expression, the function returns a value of undefined.
  • The arguments of a function are maintained in the special array "arguments" (zero-based).
arguments[0]       // First argument
arguments[1]       // Second argument
arguments.length   // Number of arguments

Examples
// Timeline function
function multiply(x:Number, y:Number):Number {
    var product:Number = x * y;
    return product;
}
var i:Number = this.multiply(5, 7);


// Global function
_global.subtract = function(x:Number, y:Number) {
    return x - y;
}
var j:Number = subtract(5, 3);


function myConcat():String {
    var result:String = "";   // Initialize the output.
    var separator:String = arguments[0];

    // For each argument (skipping the first one, which is the separator).
    for (var i:Number = 1; i < arguments.length; i++) {
        if (i > 1) {
            result += separator;
        }
        result += arguments[i];
    }
    return result;
}

// "red, orange, blue"
var str:String = this.myConcat(", ", "red", "orange", "blue");