diff core-javascript/javascript-exercises/answers/function-exercises.js @ 189:2e652f4b492f javascript-exercises

Add function-exercises.js - 'arguments'.
author jf3243
date Thu, 17 Nov 2011 17:25:29 +0000
parents 41c63d83ef49
children 6e302e558f09
line wrap: on
line diff
--- a/core-javascript/javascript-exercises/answers/function-exercises.js	Thu Nov 17 17:14:16 2011 +0000
+++ b/core-javascript/javascript-exercises/answers/function-exercises.js	Thu Nov 17 17:25:29 2011 +0000
@@ -44,3 +44,36 @@
     something = undefined;
     assert( fn() === something );
 });
+
+
+TEST('arguments', function()
+{
+    var something = null;
+
+    // 1
+    var fn_1 = function(){
+        return arguments.length;
+    };
+
+    something = 0;
+    assert( fn_1() === 0 );
+    something = 1;
+    assert( fn_1(0) === something );
+    something = 2;
+    assert( fn_1(0, 0) === something );
+    something = 3;
+    assert( fn_1(0, 0, 0) === something );
+
+
+    // 2
+    var fn_2 = function(i){
+        return arguments[i];
+    };
+
+    something = 0;
+    assert( fn_2(0) === something );
+    something = 1;
+    assert( fn_2(1, 1, 2) === something );
+    something = 11;
+    assert( fn_2(2, 10, 11) === something );
+});