aboutsummaryrefslogtreecommitdiffstats
path: root/test/suite/ch13/13.0/S13_A3_T1.js
diff options
context:
space:
mode:
authorDavid Fugate <dfugate@microsoft.com>2012-02-03 13:36:07 -0800
committerDavid Fugate <dfugate@microsoft.com>2012-02-03 13:36:07 -0800
commit2f093b79888214dc2a73301a022dede17241562d (patch)
tree0d95a803e29cd9179221bceb618128a667daf1a4 /test/suite/ch13/13.0/S13_A3_T1.js
parent0ff258fa1d6dbe1d5978c0bc86438e1625f89a74 (diff)
No test262 test cases can be found under test/suite/chN/*.js for
all 'N'. If such files existed, they've been moved to test/suite/chN/N.0/ now.
Diffstat (limited to 'test/suite/ch13/13.0/S13_A3_T1.js')
-rw-r--r--test/suite/ch13/13.0/S13_A3_T1.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/test/suite/ch13/13.0/S13_A3_T1.js b/test/suite/ch13/13.0/S13_A3_T1.js
new file mode 100644
index 000000000..7b4d3df15
--- /dev/null
+++ b/test/suite/ch13/13.0/S13_A3_T1.js
@@ -0,0 +1,29 @@
+// Copyright 2009 the Sputnik authors. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/**
+ * The Identifier in a FunctionExpression can be referenced from inside the FunctionExpression's FunctionBody to allow the function calling itself recursively
+ *
+ * @path ch13/S13_A3_T1.js
+ * @description Creating a recursive function that calculates factorial, as a variable.
+ * Function call itself by it`s name
+ */
+
+var __func = function __exp__func(arg){
+ if (arg === 1) {
+ return arg;
+ } else {
+ return __exp__func(arg-1)*arg;
+ }
+};
+
+var fact_of_3 = __func(3);
+
+//////////////////////////////////////////////////////////////////////////////
+//CHECK#1
+if (fact_of_3 !== 6) {
+ $ERROR("#1: fact_of_3 === 6. Actual: fact_of_3 ==="+fact_of_3);
+}
+//
+//////////////////////////////////////////////////////////////////////////////
+