39 lines
581 B
ActionScript
39 lines
581 B
ActionScript
|
package {
|
|||
|
public class Test {}
|
|||
|
}
|
|||
|
|
|||
|
function closure_ab(a_start) {
|
|||
|
var a = a_start;
|
|||
|
|
|||
|
return function (b_start) {
|
|||
|
var b = b_start;
|
|||
|
|
|||
|
return function (c, d) {
|
|||
|
a += c;
|
|||
|
b += d;
|
|||
|
|
|||
|
return a * b;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
trace("/// var fn1 = closure_ab(1)(1);");
|
|||
|
var fn1 = closure_ab(1)(1);
|
|||
|
|
|||
|
trace("/// fn1(0, 0); ");
|
|||
|
trace(fn1(0,0));
|
|||
|
|
|||
|
trace("/// fn1(5, 3); ");
|
|||
|
trace(fn1(5,3));
|
|||
|
|
|||
|
trace("/// var fn2 = closure_ab(3)(2);");
|
|||
|
var fn2 = closure_ab(3)(2);
|
|||
|
|
|||
|
trace("/// fn2(1,1); ");
|
|||
|
trace(fn2(1,1));
|
|||
|
|
|||
|
trace("/// fn1(-3,-5); ");
|
|||
|
trace(fn1(-3,-5));
|
|||
|
|
|||
|
trace("/// fn2(1,1); ");
|
|||
|
trace(fn2(1,1));
|