function f() { | |
var args = arguments, r; | |
for (var i = 0; i < args.length; i++) | |
r = args[i]; | |
return r; | |
} | |
assertEq(f.apply(null, [1, 2, 3, 4, 5, 6]), 6) | |
assertEq(f.apply(null, [1, 2, 3, 4, 5]), 5) | |
assertEq(f.apply(null, [1, 2, 3, 4]), 4) | |
function g(arg) { | |
var r; | |
for (var i = 0; i < arg.length; i++) | |
r = arg[i]; | |
return r; | |
} | |
assertEq(g((function () arguments).call(null, 1, 2, 3)), 3); | |
assertEq(g(new Float32Array(3)), 0.0); | |
assertEq(g([1, 2, 3, 4]), 4); |