回答編集履歴
2
コードのconst/let付け忘れ
test
CHANGED
@@ -30,13 +30,13 @@
|
|
30
30
|
|
31
31
|
function () {
|
32
32
|
|
33
|
-
args = [...arguments].join(", ")
|
33
|
+
const args = [...arguments].join(", ")
|
34
34
|
|
35
35
|
log(`${nest}invoking ${func_name}(${args})`)
|
36
36
|
|
37
37
|
nest += ' '
|
38
38
|
|
39
|
-
result = f.apply(this, arguments)
|
39
|
+
let result = f.apply(this, arguments)
|
40
40
|
|
41
41
|
nest = nest.slice(1)
|
42
42
|
|
1
実行結果を追記
test
CHANGED
@@ -94,7 +94,39 @@
|
|
94
94
|
|
95
95
|
```
|
96
96
|
|
97
|
+
結果:
|
97
98
|
|
99
|
+
```
|
100
|
+
|
101
|
+
--- original function ---
|
102
|
+
|
103
|
+
fact(3) = 6
|
104
|
+
|
105
|
+
--- trace function ---
|
106
|
+
|
107
|
+
invoking fact(3)
|
108
|
+
|
109
|
+
invoking fact(2)
|
110
|
+
|
111
|
+
invoking fact(1)
|
112
|
+
|
113
|
+
invoking fact(0)
|
114
|
+
|
115
|
+
result is 1
|
116
|
+
|
117
|
+
result is 1
|
118
|
+
|
119
|
+
result is 2
|
120
|
+
|
121
|
+
result is 6
|
122
|
+
|
123
|
+
fact(3) = 6
|
124
|
+
|
125
|
+
--- untrace function ---
|
126
|
+
|
127
|
+
fact(3) = 6
|
128
|
+
|
129
|
+
```
|
98
130
|
|
99
131
|
少し本質的でないところに手を入れてしまってます。分かりづらかったらスミマセン。
|
100
132
|
|